Software engineering and personal development

Tag: learn (Page 2 of 4)

How to Check Whether 2 Strings Are Anagrams in Python Using Counter

A MacBook with lines of code on its screen on a busy desk
Photo by Christopher Gower on Unsplash

Checking whether a word is an anagram of another one can be a question that is quite common in coding interviews.

If you don’t know what an anagram is, here is a definition:

An anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once. For example, the word anagram itself can be rearranged into nag a ram, also the word binary into brainy and the word adobe into abode. 

Continue reading

How to Convert a Natural-language-like String into a Date in Python

turned on gray laptop computer
Photo by Oskar Yildiz on Unsplash

You have probably come across situations in which you needed to convert a string into a date in Python. There are a few ways to do that, but you may have not had the chance to use the following method.

It’s not that it is so special that you cannot learn, or that it is so difficult what’s going on. It’s basically a rare conversion that you have not had the chance to stumble upon before.

Continue reading

How To Find The Index Of An Item In A Tuple In Python

turned-on flat screen TV
Photo by Alexandru Acea on Unsplash

As Python is one of the most popular languages right now, many developers from other languages may also start using it whether that is just on a side project, or a simple script that can help them automate some tasks.

They may have been able to see how to actually find the index in an array, for example in Java, where you write the name of the array and also the index in the brackets. This is also available in Python.

Continue reading

How To Quickly Find The Number Of Days Between 2 Dates In Python

laptop on brown sofa
Photo by XPS on Unsplash

If you use Python in your work, or simply for scripting, chances are that there will come a point in time when you are going to need to work with dates.

Since we still live in this universe where time passes, we may need to find the number of days that have passed between one point and another one.

We can of course pull up a calendar and manually count the days, which is slow and boring.

Continue reading

Free Step-by-step Guides on What to Learn as a Software Developer

laptop computer showing codes
Photo by AltumCode on Unsplash

One of the main pain points in the career of a software developer is that there are too many things to learn, not that much time available, and many different alternatives that can make it hard to prioritize and choose from an overwhelmingly large list of technologies that can currently be well paid in the market.

It’s even hard to compare it with any other job. At least, no other profession comes to my mind that could have such diverse possibilities to choose from.

Continue reading

Can You Learn Programming In A Single Night?

man wearing brown jacket and using grey laptop
Photo by Andrea Piacquadio on Pexels.com

A software bug in a Therac-25 radiation therapy machine caused the death of five patients after receiving a massive dose of X-rays.

Knight Capital lost half a billion dollars in half an hour when a software bug allowed computers to sell and buy millions of shares with no human oversight.

These and many other stories tell how seemingly unimportant bugs can actually cause so many tragic disasters.


Image source

Software is becoming more and more important and that doesn’t seem to stop any time soon. 

At the same time, this comes with the increased responsibility for programmers who are supposed to be very careful and really good at what they do.

Not programmers who only spent 1 night learning a few lines of code from a book and have cold emailed hundreds of recruiters asking for a job.

Wait, is it really possible to learn programming in just 1 night?

As funny as it sounds, there was a similar question asked on Quora more than 5 years ago. 

Unfortunately, I cannot find that exact question anymore, but it stuck in my memory since then.

Maybe, the person who made the question was trolling, or had an exam the next day and was hoping to get encouraging answers to pull an all-nighter and study before the exam.

I don’t remember the other answers, but I read one answer in there, which was really wise.

The answer was something along the lines:

Take a laptop and go to the north pole. A night there lasts 6 months. That’s how you can increase your chances of learning programming.

We live in this time where we want everything in a matter of seconds. 

We want fast food, fast cars, six-pack abs in 6 days, etc.

That’s the mindset that we have most of the time and we expect the same thing to be in other areas as well.

However, the real mastery comes from a lot of work and dedication. 

You have Peter Norvig, the director of research at Google suggesting you to learn to program in 10 years because rushing isn’t going to be worth it:

“In 24 hours you won’t have time to write several significant programs, and learn from your successes and failures with them. You won’t have time to work with an experienced programmer and understand what it is like to live in a C++ environment. In short, you won’t have time to learn much. So the book can only be talking about a superficial familiarity, not a deep understanding. As Alexander Pope said, a little learning is a dangerous thing.”

If you mention that to people, they may not like it, but that’s the actual reality. 

You cannot just jump from printing a few “Hello World” statements in the console and expect to build the next Google the other day.

I am not denying the fact that you could implement a really nice application in a few hours, but that doesn’t come that fast.

There is a developer who has already implemented 10 applications in 10 hours in one sitting, but that’s not the result of one-night learning. He learned a lot until he managed to pull that off.

It takes time to learn something really well.

The more you do something, the more likely you are at getting better at it, which results in an improvement of your performance, and the cycle repeats.

Now that you have read that, do not get too overwhelmed with the long journey ahead of you though.

Will Smith describes it really well:

“You don’t set out to build a wall. You don’t say ‘I’m going to build the biggest, baddest, greatest wall that’s ever been built.’ You don’t start there. You say, ‘I’m going to lay this brick as perfectly as a brick can be laid.’ You do that every single day. And soon you have a wall.”

Now, instead of asking yourself whether you can learn programming in 1 night, a better question would be:

What is one small but valuable thing that I could learn tonight?

« Older posts Newer posts »

© 2024 Fatos Morina

Theme by Anders NorenUp ↑