Because you want to be a programmer

Last time I had no intention of writing a Do Not Learn Programming Program to create controversy, but it seemed to have created a heated debate. There seems to be a huge number of readers who stopped reading as soon as they looked over the title of that article.

So today I will start with a story of myself. I think you will find in there an interesting meaning.

My mother once told me that the only reason for her dating my father was because my grandmother told my mother to stay away from that father, he didn't seem to be good. .

If my mother followed that advice, then I would not have existed in this world.

This is a completely true story, friends.

Passion is the biggest motivation for you to become a programmer.

I have argued that those who need to learn programming are often encouraged by its authenticity. Because there are no sugar-coated bullets in programming. If after listening to both its advantages and disadvantages, and you still want to learn programming, then learn programming by all means possible. If you are easily discouraged by listening to some of the downside of programming, there are countless other things that you can spend your time learning but are less vague, useful and practical. than. According to Michael Lopp, you can learn to be a better communicator. According to Gina Trapani, you can learn how to propose better solutions. Learning programming is just a small part of all the solutions according to my experience. Why do you have to follow this industry?

In the early stages of computers, everyone had to become a programmer because there was no software at the time. If you want the computer to do anything, you have to write the code for it. The computer was then booted and ran straight into a BASIC interpreter with a friendly cursor. From my point of view, the entire software development industry is an area where programmers we spend our whole lives writing code to help our fellow people no longer need to write code (or even Even worse, being programmers) to complete the work with computers. So the idea that "everyone must know how to program" is, for me, a step backwards.

I fully support the introduction of basic knowledge on the Internet. But to become a good car driver, do people need to know how much their car details will work? Do we have to teach all humans about the basic knowledge of becoming a car mechanic, and should organize an advanced class at the same level as classes in English and Mathematics ? Does knowing how to change a car's tire, and when should it take your car to change in oil, which one is more useful? If your toilet is clogged, then you don't need to spend two weeks to study an intensive toilet course on the toiletcademy.com website just to understand how to fix that problem. Reading a website that guides a quick solution would be much more helpful.

So what is the code, in the most abstract sense?

code (kōd) …

3. a. Is a system of symbols used to represent letters or numbers in the transmission of messages.

b. As a system of symbols, words or words giving certain meaning, is used to convey messages that require confidentiality or concise.
4. A system of symbols and rules used to describe scripts for a computer to execute …

– Extract from American Heritage English dictionary

Is it a punching machine? The remote terminal? Emacs? Textmate? Eclipse? Visual Studio? C? Ruby? JavaScript? In the 1920s, a very important skill was considered how to use slide rules to calculate. In the 1960s, an important skill was learning how to draw machine parts. None of them are important today. I was a little hesitant to suggest any single approach to programming rather than the basic platforms outlined in Code: The Hidden Language of Computer Hardware and Software , because I'm not sure We will even recognize programming work in the next 20 or 30 years. For today's kids, perhaps the final programming job will be similar to playing Minecraft games, or building game levels in Portal 2.

But each person should also try to write a bit of code, because in a sense it also sharpens your intellect, right? In abstract terms, it is like reading the Encyclopedia Brittanica from the beginning to the end. Honestly, I really like people who have spent their time discovering their favorite issues and finding interest, and researching to find ways to solve those problems. The hardest thing in life is not learning a lot of things that might be useful, but you have to find out what you're really passionate about and want to do. If you say that research and discovery leads to programming, then you learn programming … then this sounds like they have no value at all.

So no, I do not support programming for the purpose of riding flowers to see for fun. But I support shameless people to pursue their passion. For example, I just received the following letter yesterday.

I am a 45-year-old lawyer trying to quit my legal career job as soon as possible to find my next career. I'm actually paying a person to help me do this job, and that is the first step in the process of "finding myself". I looked back at my very long and difficult career and realized the times when I was doing something that I was really excited about.

I became an accountant during the PC computer revolution that took place (when I started my first "real" job at Arthur Andersen, we still sat down to calculate Discounted invoices for customers by hand), I spent a lot of time to learn how to make computers, printers, and software (such as VisiCalc) work. The almost technical aspect of my job has reached its peak when I was hired as a health care financial analyst for a large hospital system. When I went to work on my first day in that position, I learned that the predecessor had left me with just a static Excel worksheet that was supposed to "analyze" the health care contract data. Healthy multi-million dollar revenue for a system up to 7 hospitals. I conducted a build of my own spreadsheet, but it quickly outperformed Excel's storage capacity and so I had to learn Access instead, but then the data was too big and also exceeded. Access's largest storage capacity – I had to query hundreds of thousands of records about patients and then apply calculation formulas on them to analyze the health care contract data.

I must first admit that I did not program in any sense of the word "professional". I made Access have to do things that Microsoft technical support staff told me that was impossible, but I still simply use very basic scripts to force an application to existence must work at my disposal. One thing I still remember clearly was that it made me feel very happy. I sat down to type a lot of nested commands into formulas from 12 to 14 hours a day and still felt unsatisfied when I had to stop.

My experience in building that "demon" and making it work, my day's job satisfaction has also been fulfilled, although I later became financial director (CFO ) for another health care center, but I have had the most satisfying moments of my career ambition at the time. It is more valuable than a job. I have collaborated with analysts and IT to test, fail, try again, debug and continue building that huge database. I learned about Easter Eggs and programming knowledge and realized that I was poking myself in the mainframe areas of the hospital that should have been completely banned for a person who was paid for a position. CFO like me. And now, I am pursuing my "main career goal" and will end the jobs / jobs that I hate to work with.

This is a person that a) found an interesting problem, b) tried to create a solution to that problem, in a very natural way c) that led them to learn programming. And they loved it. I didn't become a programmer because someone told me that programming is important, that I became a programmer because I wanted to change the rules of the video game games that I Play at a young age, and programming is the only way to do it. In that direction, I also love programming.

All of that to say that I stood in the middle of the road more than once, and I still heard the melodious songs of those peaceful days during the time I worked almost programming and i was interested in that job. I have a question for you is whether you think someone with a starting point like me can learn programming to a level where I can be hired as a programmer? I'm not trying to do this job while still having to run around New York City to do another day job. Rather, I am sincere and absolutely want to be a true programmer and will spend my whole life creating (and / or debugging) something of value.

Unfortunately, calling yourself a "programmer" can become a moving step that limits your career, especially for someone who has previously held the position of finance director ( CFO) before. People who work with money and are able to make a lot of money, like Wall Street guys .

But this is not about money, is it? It is about love. So if you want to be a programmer, all you need to do is act according to the voice of your heart and love the code. Any good developer immediately recognizes their true colleague, a person who is willing to risk his love for code, and all that is involved. Welcome to join our developer tribe.

If you are reading this article and thinking in your mind, "Hey Jeff Atwood, would you give me advice whether I should study programming or not?", All I can answer is: yes! What are you waiting for!

ITZone via vinacode

Share the news now