Binary Search was one of the first algorithms I learned. It’s widely used in real-world scenarios and questions about it appear quite often during junior job interviews. I love its simplicity, intuitiveness and power. In this article I’ll do my best to take you by hand straight into the beautiful world of algorithmic thinking. Read more "Binary Search - Perfect Start of Algorithmic Journey"
Every good programming blog needs at least one post about SOLID principles, right? SOLID is a set of rules one should follow, when writing object-oriented code and yes - as junior developer I broke all of them many times. In this article I’m sharing my mistakes, so that you can learn and correct them yourself. To check proper implementation for each principle scroll to the very bottom. Read more "SOLID Principles and How I Was Breaking Them as Junior Developer"
I always try to be active on many Facebook groups, consisting mainly of junior devs (or soon-to-be junior devs). Sharing my knowledge is something that I love to do and despite the fact I haven’t seen everything in the industry yet, I am confident I can help a few people. So, I decided to send my audience a little survey with just one text field for any anonymous question related to programming or IT. I picked the most interesting ones and answered them in this post. Do not take my words for granted though. You can always disagree in the comments and I’d be happy to see your point of view! Read more "Ask Me Anything About IT and Programming Part 1"
So, after reading tons of articles, watching YouTube tutorials and browsing docs you’ve finally gotten it! You can initialize Git repository, check its current status, add and commit changes and, in the end, push all of that to GitHub or Bitbucket. Who knows, maybe you even created and merged few branches. But there’s a lot more you can do with this great version control system. In this post I’m giving you 5 Git commands to master right after grasping the essentials. Read more "5 Git Commands to Know Just After You Get the Basics"
RxJava, RxJS, RxSwift, RxKotlin, RxScala, Rx.NET… - do you see technologies like these listed in the job requirements and feel a little bit scared? I don’t blame you. Reactive programming may seem intimidating at first, but I believe that my explanation will give you solid understanding of the basics and push you quicker through the initial learning curve, regardless of the programming language you decide to use. Read more "Introduction to Reactive Programming for Everyone"
Not every great course available online has to cost a lot of money. In fact, some incredible experts, who know how to explain stuff, offer many resources for free. In this post I want to share with you my favorite materials. I used most of them, but there are also links that were recommended to me by people I worked or talked with (thank you very much for that!). I’m listing platforms and authors to check for more content too, in case you won’t find what you’re looking for here. Read more "Top FREE Online Programming Courses Part 1"
When I was recruiting juniors for entry level job in one of my previous companies, I gradually began to be more and more astounded by how little they could had done before interview to immediately stand out from other applicants. Knowledge is easily accessible nowadays and there were many young programmers, who presented very similar technical expertise. So why did I choose one over another? I'll share it with you! Here are some tips that you can implement in about an hour to be noticed.
iOS devs work alongside us, Android guys, on most projects. But in spite of having the same goal— satisfying end users, I always felt like we speak different languages. Driven by curiosity and goal of improving communication across different technical teams, I decided to try iOS development for a while. The article summarizes what I’ve learned during this short period in 5 parts: high level concepts, basic deep dive findings, resource management, releasing and going out.
This article provides an intuitive approach to neural networks and their learning process (backpropagation) using some simple undergraduate mathematical formulas and terms. Being a huge believer in value of knowledge sharing, I hope it’ll shed some light for someone starting AI/ML journey or clarify few things for those mindlessly using high-level tools such as Keras (been there, done that). Without further ado…