• Guest
HabraHabr
  • Main
  • Users

  • Development
    • Programming
    • Information Security
    • Website development
    • JavaScript
    • Game development
    • Open source
    • Developed for Android
    • Machine learning
    • Abnormal programming
    • Java
    • Python
    • Development of mobile applications
    • Analysis and design of systems
    • .NET
    • Mathematics
    • Algorithms
    • C#
    • System Programming
    • C++
    • C
    • Go
    • PHP
    • Reverse engineering
    • Assembler
    • Development under Linux
    • Big Data
    • Rust
    • Cryptography
    • Entertaining problems
    • Testing of IT systems
    • Testing Web Services
    • HTML
    • Programming microcontrollers
    • API
    • High performance
    • Developed for iOS
    • CSS
    • Industrial Programming
    • Development under Windows
    • Image processing
    • Compilers
    • FPGA
    • Professional literature
    • OpenStreetMap
    • Google Chrome
    • Data Mining
    • PostgreSQL
    • Development of robotics
    • Visualization of data
    • Angular
    • ReactJS
    • Search technologies
    • Debugging
    • Test mobile applications
    • Browsers
    • Designing and refactoring
    • IT Standards
    • Solidity
    • Node.JS
    • Git
    • LaTeX
    • SQL
    • Haskell
    • Unreal Engine
    • Unity3D
    • Development for the Internet of things
    • Functional Programming
    • Amazon Web Services
    • Google Cloud Platform
    • Development under AR and VR
    • Assembly systems
    • Version control systems
    • Kotlin
    • R
    • CAD/CAM
    • Customer Optimization
    • Development of communication systems
    • Microsoft Azure
    • Perfect code
    • Atlassian
    • Visual Studio
    • NoSQL
    • Yii
    • Mono и Moonlight
    • Parallel Programming
    • Asterisk
    • Yandex API
    • WordPress
    • Sports programming
    • Lua
    • Microsoft SQL Server
    • Payment systems
    • TypeScript
    • Scala
    • Google API
    • Development of data transmission systems
    • XML
    • Regular expressions
    • Development under Tizen
    • Swift
    • MySQL
    • Geoinformation services
    • Global Positioning Systems
    • Qt
    • Dart
    • Django
    • Development for Office 365
    • Erlang/OTP
    • GPGPU
    • Eclipse
    • Maps API
    • Testing games
    • Browser Extensions
    • 1C-Bitrix
    • Development under e-commerce
    • Xamarin
    • Xcode
    • Development under Windows Phone
    • Semantics
    • CMS
    • VueJS
    • GitHub
    • Open data
    • Sphinx
    • Ruby on Rails
    • Ruby
    • Symfony
    • Drupal
    • Messaging Systems
    • CTF
    • SaaS / S+S
    • SharePoint
    • jQuery
    • Puppet
    • Firefox
    • Elm
    • MODX
    • Billing systems
    • Graphical shells
    • Kodobred
    • MongoDB
    • SCADA
    • Hadoop
    • Gradle
    • Clojure
    • F#
    • CoffeeScript
    • Matlab
    • Phalcon
    • Development under Sailfish OS
    • Magento
    • Elixir/Phoenix
    • Microsoft Edge
    • Layout of letters
    • Development for OS X
    • Forth
    • Smalltalk
    • Julia
    • Laravel
    • WebGL
    • Meteor.JS
    • Firebird/Interbase
    • SQLite
    • D
    • Mesh-networks
    • I2P
    • Derby.js
    • Emacs
    • Development under Bada
    • Mercurial
    • UML Design
    • Objective C
    • Fortran
    • Cocoa
    • Cobol
    • Apache Flex
    • Action Script
    • Joomla
    • IIS
    • Twitter API
    • Vkontakte API
    • Facebook API
    • Microsoft Access
    • PDF
    • Prolog
    • GTK+
    • LabVIEW
    • Brainfuck
    • Cubrid
    • Canvas
    • Doctrine ORM
    • Google App Engine
    • Twisted
    • XSLT
    • TDD
    • Small Basic
    • Kohana
    • Development for Java ME
    • LiveStreet
    • MooTools
    • Adobe Flash
    • GreaseMonkey
    • INFOLUST
    • Groovy & Grails
    • Lisp
    • Delphi
    • Zend Framework
    • ExtJS / Sencha Library
    • Internet Explorer
    • CodeIgniter
    • Silverlight
    • Google Web Toolkit
    • CakePHP
    • Safari
    • Opera
    • Microformats
    • Ajax
    • VIM
  • Administration
    • System administration
    • IT Infrastructure
    • *nix
    • Network technologies
    • DevOps
    • Server Administration
    • Cloud computing
    • Configuring Linux
    • Wireless technologies
    • Virtualization
    • Hosting
    • Data storage
    • Decentralized networks
    • Database Administration
    • Data Warehousing
    • Communication standards
    • PowerShell
    • Backup
    • Cisco
    • Nginx
    • Antivirus protection
    • DNS
    • Server Optimization
    • Data recovery
    • Apache
    • Spam and antispam
    • Data Compression
    • SAN
    • IPv6
    • Fidonet
    • IPTV
    • Shells
    • Administering domain names
  • Design
    • Interfaces
    • Web design
    • Working with sound
    • Usability
    • Graphic design
    • Design Games
    • Mobile App Design
    • Working with 3D-graphics
    • Typography
    • Working with video
    • Work with vector graphics
    • Accessibility
    • Prototyping
    • CGI (graphics)
    • Computer Animation
    • Working with icons
  • Control
    • Careers in the IT industry
    • Project management
    • Development Management
    • Personnel Management
    • Product Management
    • Start-up development
    • Managing the community
    • Service Desk
    • GTD
    • IT Terminology
    • Agile
    • Business Models
    • Legislation and IT-business
    • Sales management
    • CRM-systems
    • Product localization
    • ECM / EDS
    • Freelance
    • Venture investments
    • ERP-systems
    • Help Desk Software
    • Media management
    • Patenting
    • E-commerce management
    • Creative Commons
  • Marketing
    • Conferences
    • Promotion of games
    • Internet Marketing
    • Search Engine Optimization
    • Web Analytics
    • Monetize Web services
    • Content marketing
    • Monetization of IT systems
    • Monetize mobile apps
    • Mobile App Analytics
    • Growth Hacking
    • Branding
    • Monetize Games
    • Display ads
    • Contextual advertising
    • Increase Conversion Rate
  • Sundry
    • Reading room
    • Educational process in IT
    • Research and forecasts in IT
    • Finance in IT
    • Hakatonas
    • IT emigration
    • Education abroad
    • Lumber room
    • I'm on my way

The difficulties of self-learning programming and how to overcome them

Before you translate article Xiang Zhou , published on the site freeCodeCamp . If you are a self-taught developer and want to overcome all obstacles on the way to the goal, welcome under the cut!
 
 
The difficulties of self-learning programming and how to overcome them  
"The White Book on a Brown Wooden Table", photo Alexander Michl on Unsplash
 
freeCodeCamp gaining increasing popularity, and the network appeared a huge number of courses , including on YouTube.
 
 
However, programming is not so easy. There are certain difficulties that we all face when we learn to write code.
 
 

1. How long does it take to program each day


 
If you learn to write code yourself, chances are, there are other responsibilities in your life. Some work part-time or full-time, others sit at home with children. Anyway, everyone has their own worries.
 
 
How can I find time for programming daily?
 
 
Someone will say: "There would be a desire, but there will be time." That's right, I will not argue. But there is another question: how much should I give to programming every day? If my maximum is half an hour, does it count?
 
 
Only you can reply. It is very difficult to determine the time required for training. Some believe that less is better, but better and 15 minutes is enough.
 
 
On the other hand, I heard about people who got a job in the field of development about a year after the start of training, because they wrote the code for 9-10 hours a day. If you need motivation, you can take a look at this thread .
 
 
So, it all boils down to one: only you yourself know how many hours a day you can be engaged in programming so that it becomes a habit, but not exhausted . The latter is especially important. The founder of freeCodeCamp Quincy Larson once said in his tweet:
 
"It's not how much you advance in one day, but in the fact that you move forward on a daily basis."
In the video below, a leading programmer, who has worked in the IT field for more than ten years, will tell you how much time each day is spent writing code from developers.
 
 
Of course, this is not a universal recipe, but you will get a general idea of ​​how to approach the planning of time for studying wisely and, importantly, without fanaticism.
 
 

 

2. How to find the golden mean between "almost did not budge" and "burned at work"


 
Personally, I wasted it. Sometimes, I could not understand a single piece of code, not a single idea from the book I read - my brain refused to learn the information. I was exhausted so that I went out to the balcony to breathe and calm down.
 
 
From that moment, I began to remind myself that you should not deplete and reach the point of no return.
 
 
Programming is not the easiest job. It requires concentration, especially when you are learning something new. It's hard mental work: sometimes you do not even understand why your code does not work or, conversely, why it's earned.
 
 
 
 
I realized that I was able to achieve the greatest productivity, focusing on the current work, but without straining, and enjoying the process.
 
 
This happened when I:
 
 
 
found a problem that required solution;
 
found a solution on forums in the network;
 
tried to get out of trouble in several ways, checking which one will work;
 
solved the problem.
 
 
Trying to come to terms with the fact that most of the material is boring confusing information (data structures, algorithms, etc.), I have established a 50/50 rule, which I use when self-learning.
 
 
I spend 50% of the time on complex tasks - learning the basics, concepts, algorithms and other things. The remaining 50% remain on my own projects, which I do with pleasure. So I achieve harmony in my daily schedule.
 
 
Simply put, you need to love what you do. And this conclusion allows us to smoothly move on to the next point.
 
 

3. The only way to overcome obstacles is to love your work


 
Trite, but true. If you like the chosen path, if you like your work and the direction in which you are moving - the approval of others is not necessary. A sense of satisfaction of this kind can not be borrowed, replaced or, worse, simulated.
 
 

 

4. Always return to programming when you finish with other cases


 
The reality of self-study is this: you can not be left alone, alone with your directories.
 
 
In life, we all have many other responsibilities. Perhaps you are someone's spouse or parent and you need to take care of your family. Maybe you have a permanent job or you are a student who writes a diploma or receives a degree. When there are so many cases, how to find time for programming?
 
 
Honestly, sometimes it's simply impossible. It happened that I did not write code for a long time - once even for two whole months.
 
 
However, after this break, I immediately went back to programming and immediately realized that I had forgotten a lot. It is very unpleasant, opening the book, not knowing from when to continue learning. Lord, do I have to reread all the chapters and do all the tasks again?
 
 
This is the moment when you need to hold out, stand up. You need to say to yourself: "So, the first hour of training seems to be going slowly and completely unproductively. But it's okay, I'm catching up, having learned more tomorrow. "
 
 
This pill can not be sweetened in any other way - just by continuing to work, no matter what. Go to the forum of coders on Twitter and complain, but after that, be sure to return to programming.
 
 

5. Motivate yourself in any way


 
Self-study is very different from studying at university or at school. While you are working on the code, there are no classmates or communication around you, and at the end of the tunnel there is no pretentious ceremony of awarding diplomas. Almost always you are left to yourself and do everything yourself. That's why it's so important to find motivation to keep moving forward.
 
 
I often read this subforum on reddit, since many of its users are developers. When creating software, they all use the most powerful hardware. What can be the best reward for a programmer?
 
 
You, too, get in the habit of rewarding yourself. It can be a big or small encouragement - a hot shower at the end of the day, a soft drink, praise to oneself (often in the learning process it is necessary). Hang on the wall in front of a photo. One must believe that one day your workplace will look like this.
 
 
 
 

6. Do not be tempted to learn for the sake of studying - go to interviews and meetings, send summaries


 
Sometimes in the learning process you can deviate from the intended course. I'm familiar with the desire to be lazy. But not in the sense that I do not want to learn, but that there is a secret hope, sitting out the days behind the monitor, to avoid a real test - work as a developer .
 
 
Do not be tempted to reason: "I'm learning, it's enough. I'll think about finding work later, when I'm ready. "
 
 
Quite frankly, it would not hurt me to look for potential customers more often. Even if it's about free development of a website for relatives and friends. In that case, the next time I come for an interview, I will have material that will add weight to the resume. The first step is the most difficult, but it must be done at all costs.
 
 
All these barriers will grow on your way to a developer's career. Meet them with the right attitude: they will make you stronger and better.
 
 
And finally, pleasant programming! Enjoy what you create, be it your project or your future.

It may be interesting

  • Comments
  • About article
  • Similar news
This publication has no comments.

weber

Author

22-09-2018, 11:32

Publication Date

Perfect code / Programming

Category
  • Comments: 0
  • Views: 276
Fit tutorials on YouTube
The most complete Russian-language
New books about children's programming
The book "Programming for children.
Whiskers, paws and tail: how the neural
Using CodeMonkey for teaching children
Write a comment
Name:*
E-Mail:


Comments
Born and raised in Sarawak, Malaysia. ICE CREAM is now one of the very few DJs who are active in the International scene. He had trained his way into playing at the top clubs all over Borneo since 2010. Check Out: DJ Ice cream
Yesterday, 22:19

noorseo

Thanks for the information your article brings. I see the novelty of your writing, I will share it for everyone to read together. I look forward to reading many articles from you.
<a href="https://sites.google.com/view/escortmumbaishub/"> Mumbai Escorts Service </a> 
<a href="https://vipmumbaiescortshub.blogspot.com/"> Escorts Service in Mumbai </a> 
<a href="https://vipmumbaiescortshub.wordpress.com/"> Independent Mumbai Escorts Service </a> 
<a href="https://vipmumbaiescortshub.weebly.com/"> Independent Mumbai Escorts Girls </a> 
<a href="https://mumbaiescortshub.webgarden.com/"> Call Girls Service in Mumbai </a> 


It's been operating for a long time in this publish for a great concept on it. I truly very experience analyzing your true and beneficial post thanks and you guys doing the sort of a great job keep it up
Premium Call Girls in Mumbai 
Escorts Service in Mumbai 
Escorts Agency in Mumbai 
Mumbai Call Girl Service 
Escorts Agency in Mumbai 


This is a good post. This post gives truly quality information. I’m definitely going to look into it. Really very useful tips are provided here. Thank you so much. Keep up the good works.
Late-night Slim Call Girls in Mumbai 
Slim Call Girls in Mumbai 
New Girl Available in Mumbai Escort 
Collage Escort Girl from Mumbai 
New Girl Available in Mumbai Escort 


Yesterday, 11:12

karishma Agarwal

If you go to file1.php and use an include, then the path is looked at from file1.php to file2.php to include it. But DIR allows us to give file1.php the correct path to file2.php when file1.php is not the file being executed. The interpreter is looking at being inside the project folder. Then if file1 calls to file2 via include, the interpreter will first look for require('file2.php') inside the project folder, NOT the inc geometry dash folder.
Yesterday, 05:25

ferrymalika

The Daily Reports is the reliable and authentic news and blog publisher. Visit The Daily Reports for up-to-date US news, international news and policy analysis. Check out: International Politics News


At Lopez Dario, we strive to serve customers with our online business consultancy services, project management, bookkeeping, & accounting for small businesses. Check Out: Business Consultancy England
21 January 2021 22:30

saifwordpress

nice post, keep up with this interesting work. It really is good to know that this topic is being covered also on this web site so cheers for taking time to discuss this!  https://l23movies.club/
21 January 2021 15:35

Legend SEO

Adv
Website for web developers. New scripts, best ideas, programming tips. How to write a script for you here, we have a lot of information about various programming languages. You are a webmaster or a beginner programmer, it does not matter, useful articles will help to make your favorite business faster.

Login

Registration Forgot password