Are you ready?
Blog
Extending Azure CLI
Why to extend Azure CLI? Azure CLI already has a lot of extensions to cover interactions with various services in Azure cloud. It also available on all platforms (Linux, Windows, MacOS) so same tool could be used in various scenarios. Many developers already have experience working with Azure CLI so if we add new “extension” it would feel natural and would not require learning new tool from scratch. But it would require to “design” groups and commands so they would feel natural and logical.
Andrei Zhozhin |
BigData London 2022
Andrei Zhozhin |
This year I was able to attend both days of the conference and I’ve managed to speak with many exhibitors (in 2021 I had only a single day), so I’m sharing a quick overview of different tech solutions that might be interesting to explore in more detail. These include non-relational databases, developer tools, tools for data science, and some auxiliary technologies & solutions that could help with data management. It was a great time and I was able to learn a lot of new things in a pretty short time frame.
Porting Ruby library to TypeScript
Sometimes you realize that existing tools do not work for you anymore as you’ve reached particular limits. It could be a complicated tech stack to run, unacceptable execution time, and lack of expertise to do customizations. When other alternatives do not work for you it is time to create a new thing. This is a story about porting the Ruby library to JavaScript/TypeScript to support ongoing projects.
Please note that the library porting process is a serious time investment as it requires understanding two stacks, exploring other libraries, do a lot of debugging and googling.
Andrei Zhozhin |
Harnessing wild microservices
Whenever you need to break your monolith into microservices or bootstrap green field using microservices approach there would be some problems that need to be addressed to prevent operations hell. These problems arise from the fact that multiple parts of your system would become independent and every microservice would need to implement the same SDLC process, now instead of one package, you need to care about N-packages. Moreover, microservices need to interact with each other and the idea to have static configuration (like you might have in monolith) would not work with 5+ services, so you need some discovery mechanism.
Andrei Zhozhin |
Elliptic curve cryptography
Elliptic curves or ECC (Elliptic Curve Cryptographic) or ECDSA (Elliptic Curve Digital Signature Algorithm) are already used in blockchain and to protect HTTP traffic as they have a compact size and much larger private keyspace than older algorithms like RSA (Rivest–Shamir–Adleman). As ECC provides the same level of security with a much shorter key length it is much more preferable for low power devices and limited storage (Internet of things and mobile devices).
Andrei Zhozhin |
Riding blockchain
It is very hard to ignore blockchain these days as it is a core for many coll technologies these days (starting from digital currencies like Bitcoin and Etherium finishing by NFT for artwork).
Let’s look at Etherium blockchain as one of the major competitors and try to write some code to understand how to work with it programmatically.
Basics Blockchain For simplicity, Blockchain is a sequence of blocks (that can hold any data) that are linked together via hashes.
Andrei Zhozhin |
Resume as code
Looking for ultimate resume format I’m not frequently updating my resume (CV) but when I do I want to keep track of all changes and preferably store my resume in a plain text format to be able to use diff tools. A long time ago I was using Word documents to track different versions of my resume, but it was no simple way to check what have changed from one version to another and it was pain.
Andrei Zhozhin |
Spreadsheet driven development
Big and complex systems are not created big and complex they are growing organically over years and are written by “generations” of developers. At some point, accidental complexity could breach a particular threshold and new changes (even trivial ones) could be very hard to implement without breaking something else. I’d like to share an approach that could help to extract some pieces of the code into the dedicated location (read configuration) and make it maintainable.
Andrei Zhozhin |
H(ai)ckathon
This is my second hackathon and I can conclude that I like such type of activity. The topic of this hackathon was to utilize AI/ML for existing applications.
Idea Add voice search to the exiting application used by business users on mobile devices (and desktop) as it is hard to type long sentences on the go into narrow mobile interfaces. The existing application could show different reports to the users using different measures(metrics) and different dimensions(time, organization hierarchy, economic sectors, etc) to support business decisions.
Andrei Zhozhin |