Hacker News at the first sight seems like a very simple tool with many links, but it’s actually a forest of many valuable insights and discussions. It loads up pretty fast and there are no ads, no side banners to distract you, just a list with many posts.
It’s no surprise that it is so famous, as it resembles a place where developers from all over the world get to interact with each other. Of course, as in any other place on the internet, there can be trolls that can make you feel bad, or express some harsh criticism or even trolls, but aside from that, it’s actually a really great place, especially for the discussions that are shared in there.
If you have a string that you read which you need to convert into a two-dimensional array, then you probably think of dealing with complicated regular expressions.
You start to also think about the edge cases: what if an opening or closing bracket is not included, or what if there is a missing comma, etc.
Sometimes you may get an input that is a string, but you actually need it to be a list, or a list of lists.
There are many alternatives that you can use to convert such strings into lists, or list of lists, but in this article, I am going to mention here a really quick way.
Data Science is one of the hottest fields right now, with many job openings even during this pandemic.
Such need of people with data science skills inspires many people to find resources that they can use and learn from to learn and prepare to get such jobs.
Learning programming or a particular technology from books is a really good way. In one way you can move back and forth quite easily and quickly, and on the other hand, you can also move at your own pace.
They are usually more expensive, especially more expensive than books of other categories, though one could argue that people who are interested and read such books have usually a really good income.
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.
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.
“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?
If you have been interested in learning about practical Deep Learning, it’s very likely that you have already stumbled upon the free courses offered by fast.ai.
People coming from languages such as Java or C++ to Python may have been used to write many lines to do something that can be done in just one line in Python.
One such thing is list comprehension which is about the opportunity to compress many commands that can be used to manipulate list elements in just one line.
I tend to open multiple PDF files at once and it’s a lot easier to navigate through them when they are as tabs. Adobe Reader provides that by default, but I needed to view tabbed PDFs on Preview.
One great thing about software engineering is that you can find many tips online on how you can improve your skills and become a better version of yourself.
A few days ago I published one such article with a few tips that I believe can be helpful for many people. In a matter of 5 days, it has accumulated 2,100 views and 85 fans clapping and highlighting portions of it.
Here is short excerpt from it:
When some software engineers see an article mentioning the word senior, they may immediately run away and ignore it. They can be intimidated just by the title.
I am an experienced and passionate Senior Software Engineer with a demonstrated history of working in the full life cycle of software development with enormous curiosity for data science, machine learning, algorithms, data structures, and solving challenging problems. I am an open-source enthusiast at https://github.com/fatosmorina and also a writer.
I am open for new opportunities.