DEV Community

loading...

How was it when you started to code?

rileyvaness profile image Riley Van Ess ・1 min read

Alt text of image

Learning Programming

A couple months ago, I set sail on trying to accomplish a coding bootcamp. I had always been interested in coding, software and technology in general. I feel as if I have learned a bunch in the last few months both on the front-end and back-end. I haven't really gotten that many opportunities to fully cement the skills learned since it has been a kind of "fly by the seat of your pants" adventure. I've got slightly less then a month less, and overall (even though my head really hurts), I would say it has been a positive experience.

I realize that there are probably people on here that have a range of experiences in how they learned and got in to development. Every route of learning comes with it's pros and cons. I realize that learning all the time is one of the hallmarks and pretty cool aspects of this field. My question: How do you maintain your learning while not getting information overload? Obviously I have heard that those starting out in development try to compensate their lack of knowledge by trying to learn almost too much.

I am really interested in hearing everyones stories on how it felt for them starting out, both their accomplishments and failures. As some one who thinks of themselves as sort of a slow learner, everything is all quite daunting at the moment. It does seem thoughthat peaks of accomplishments both personally and professionally could make it all worth it.

Discussion (15)

pic
Editor guide
Collapse
cychainey profile image
Cy Chainey

I started out in the dial up days of the internet, so I've seen huge changes in the industry from then till now.

Over that time I've come to two conclusions:

  1. The job is not to be a developer it's to be a learner.

    The industry continually changes and finding ways to learn, methodologies that allow you to absorb an ever changing knowledge base, is actually more important in some respects than what you learn. By developing ways to learn you are able to handle the changes without feeling overwhelmed, you are able to embrace the inevitable change without being consumed by it. As learning is what you actually do for a job.
    One of the ways I use is to take the big task (right now I'm putting an API together from scratch) and to break it down in to small individual tasks. Install Mongo, connect to Mongo etc. By breaking it down I can focus just on that single task without worrying about the big task. I get a record of what I've done and regular wins which help me keep going.

  2. The code I write today is better than the code I wrote 6 months ago and worse than the code I will write 6 months from now. And that's a good thing! It means my failures/bad code were actually an integral part of my learning. Which is my job.

Obviously that's just my 5 pence... :)

Collapse
sudiukil profile image
Quentin Sonrel

The job is not to be a developer it's to be a learner.

That. 100%.

Collapse
revskill10 profile image
Truong Hoang Dung • Edited

I started to code Pascal when i was at school.
I started to code Delphi when learning about OOP and GUI programming
I started to code C/C++ when studying at University.
I started to code Java when studying Design Patterns, Algorithms and web programming.
I started to code Ruby and D3.js when learning Web services with JSON to visualize something in the web.
I started to code ReactJS to do SPA with Javascript.
I started to code Haskell to learn some functional programming, parsing and static typing.
I started to code NodeJS to make interesting stuffs.

Collapse
rileyvaness profile image
Riley Van Ess Author

What kind of interesting stuff have you made with NodeJS?

Collapse
revskill10 profile image
Truong Hoang Dung

Not much. But with NodeJS, i could

  • Easily build my own proxy for the web.
  • Building real server-side rendered website with ReactJS in one language.
  • Easy to scrape the internet.

Do you have any more interesting ideas to do with NodeJS also ? :D

Collapse
thallesaraujo profile image
Thalles Henrique • Edited

I started in college, with Python. I remember I was so confused about code identation rules, and on exams we have to "code on paper". So, to address the problem of not knowing the correct place to end conditional or method statement, my teacher invented a "vertical line" workaround, teaching us to put lines in start of statement until the end of it. One semester later, we switched from Python to Java, for learning object-oriented programming. And again, I was in trouble: this time, for mark the end of statements, I used a numbered circle to mark the start and end (ex.: ΒΉ{ }ΒΉ).
Now, it's at least an irony: I was so used with Java that completely forgot Python. Needed to re-study it to start the project I'm currently working in (and until now, even developed some Django modules for our application, I'm still committing the mistake of using { instead of : πŸ˜‚)

Collapse
sudiukil profile image
Quentin Sonrel • Edited

I started coding 8 years ago. I started with C, mostly because it's low level, popular and very stable, it felt like a good language to really learn not only how to code but also the logic that comes with it.

I really started out of curiosity, I got interested in computing a few month before that and wanted to see more of it. Also it seemed cool to be able to create things with lines of code... it's felt kinda magic at the time!

It was quite satisfying but I lacked a real project to really build something fun.

After that came Python and HTML/CSS, mostly by curiosity also. Then I started studying programming at school and I discovered Java and OOP, as well as PHP and JS.

I liked OOP but disliked Java so I learned C++ on my own. I hated PHP and JS and I swore I'd never do web dev... until discovered that web dev doesn't suck, only the way it was taught in school!

After an internship where I discovered Ruby on Rails I realized how awesome actual web dev can be and since then I focused on improving my Rails knowledge, a bit of PHP (just in case, but I still don't like it), and of course some JS.

Anyway, after 4 years at the university I decided to stop and find a job (I got fed up of feeling like 90% of my actual computing knowledge was self-taught) and now I work as a consultant (for my current mission I have a full-stack Rails dev role).

Of course I still try to learn new things when I can, mostly full-stack JS (with Node/Express and Vue.js) and lately, Flutter, all this through side projects.

Well, since this comment is turning into a biography here's an actual answer to your question:

How do you maintain your learning while not getting information overload?

From experience (but as always, YMMV) I'd say that the best way to learn something is to have a goal. Find a project idea, stick to it, pick a tech/language you'd like to learn (or learn more) and use it for it, knowledge comes from experience.

Be curious, learning a lot of things at the same time is not a good idea, but keeping an eye on things you could learn is a great way of discovering things, keep those things in mind and start learning them when the time is right (project idea, time, etc...).

Also don't try to know everything, there is no recipe for a good dev. A good dev is not the sum of the languages or techs he knows, a good dev is someone who can learn when it's needed. I also think knowing when not to learn is a quality, sometimes it's better to stick with something you know rather than trying something new that you don't master.

Last but not least, let time do it's work, experience comes with time, everyday you'll know a bit more than the previous day and less than the next day... on and on. Also, keep in mind that you will never know everything, do not see that as a bad thing but as a motivation: you'll always get better!

Collapse
jonrgroverlib profile image
jonrgrover • Edited

I started to code in 1977 in High School. I was coding in BASIC (with line numbers). I felt that the technology was potentially very powerful and felt very limited by what BASIC had to offer. I have worked since then on every job and with every line of code to break past the technology limitation of programming that I felt when I started.

Last October, I feel that I finally broke past the technology barrier of conventional programming - so, 1977 to 2017 = 40 years of work. I suspect a really smart person could have broken past in seven, and should have decades ago. There are a lot smarter people than I am and for some reason no one has succeeded where I have. I don't know why.

Collapse
rileyvaness profile image
Riley Van Ess Author

Well, not many people have been coding for 40 years! What do you usually code in now?

Collapse
jonrgroverlib profile image
jonrgrover • Edited

I code mainly in C#, SQL Server, ASP MVC, JavaScript, jQuery. These are pretty solid technologies that are likely to last a while and they do what I need. In addition I have built a library to support information programming using constructs I call endemes. For me programming is not an end but a beginning.

(and my father has been coding for 60 years).

Collapse
callgage profile image
Gage Henderson

My question: How do you maintain your learning while not getting information overload?

I know it's a given, but I'd suggest taking it one step at a time.

Continually challenge yourself, but not too much. Come up with a simple idea for a website or a feature, that is just a little beyond your current knowledge.

Say you're not very comfortable with jquery yet, but you understand the fundamentals of javascript - Maybe try making a simple dropdown menu, or even a hamburger menu.

Recently I started getting familiar with Firebase. I didn't know anything about it (I am still somewhat new to back-end development), so I started simple. I made a login page that uses Google's user authentication system. Then I took it a little further - I made a really, really simple social media feed, where users can post little text snippets and it shows up on every clients feed.

It can be hard to not get overwhelmed, but I find it helpful to remind myself that I will never know it all. No matter how skilled I get, there will always be more things that I don't know than do

Collapse
shanalikhan profile image
Shan Khan

I developed the free site when i was around 10 years old.
Developed using HTML and Microsoft Front Page.
Containing Latest Nokia Mobile Model Features, 3rd Party Online Games, Online Chat Rooms, Phone Directory and Free Software Download Links

Around 2001.

Kept managing it till 2008.
Worked on VB 6, creating simple applications on 15 years of age.
And Moved to ASP.NET with VB.NET.

Well, 2018 i have worked on different languages including Python, Java, Node JS , .NET.
Developed Applications integrated with SAP HCM and Microsoft Dynamics 365.

Currently working as Machine Learning Engineer.

Collapse
buinauskas profile image
Evaldas

Started on my mobile (not smart) phone that had no colors on it.

I was reverse engineering sites markup and trying to replicate things on my own using available site generation tools.

Collapse
rileyvaness profile image
Riley Van Ess Author

Oh wow, that must have been pretty tough?

Collapse
buinauskas profile image
Evaldas

It was. But I was curious enough and that kept me moving.