SuperConfuserUser
Nov 12, 2018 • 5 min read

Programming Pace - How long does it take?

One of the most frequently asked questions for starting anything new is “How long does it take?” A good answer should always be “It depends.”

It Depends

For programming, or the Flatiron program specifically, it depends on these factors:

My Experience

I’ll talk about some of my experiences and answers to those questions.

Learning Type and Goals

My background before coding is in 3D animation. I chose it because it was one of the more technical mediums and incorporated so much from other art forms. It has incredible depth and is always evolving, so there is never a lack of something to learn. I kept up with changes and techniques by attending conferences, doing workshops, and tutorials, constant tutorials. From that experience, I know I can learn from online tutorials without much feedback or any 1-on-1 help.

What type of learner are you and how will that affect your goals? Learning in person has many many benefits. Your timeline will be set in stone, you’ll get more access to an instructor, and you’ll have cohorts for commiseration, networking, and accountability. On the other hand, online is much more flexible for location, hours, and timeline.

I chose the online option purely because of the location factor. Otherwise, networking is a MAJOR benefit. If you don’t have a chance to network with cohorts, please network in other ways with industry professionals. So many opportunities will happen because of the people you know.

Flexibility for your timeline means that it will take as long as you want or it takes. Coaches have a general guide for certain dates and milestones. Some students can go through the curriculum extremely fast and meet the minimum requirements for portfolio projects to finish as quickly as possible. Other students may take longer to learn and work on more complex portfolio projects.

It’d be great to finish quickly AND learn, but I know my own learning style. Doing a speed run won’t let me retain much of the new information. Portfolio projects were used as a sandbox to experiment, break, fix, and learn beyond the requirements and curriculum. Much more time was put into the projects, but I was able to understand how things fit together and worked much better.

Coding Background

In high school, I took classes in C++ and Java. In college, I took an intro to scripting class for HTML. I learned a bit of PHP and CSS while building a personal portfolio and a couple static sites for small clients.

There were snippets of code here and there in the media programs. File and data structures mimic some of the design patterns too, so nesting components felt pretty familiar.

I didn’t have any experience with Ruby, JavaScript, MVC, or dynamic pages. So it was really fun learning the different concepts and programming styles for each.

Having some coding experience was definitely a big help for learning the new languages. I still remembered concepts from long ago and knew that I enjoyed it.

If you have no experience with coding, I would highly recommend the bootcamp prep courses. They’re a good sample of what the rest of the curriculum is like and will help you figure out if you even like coding and about how fast it may take you. The work we did in those two weeks already advanced past what I learned in the high school classes. There are also many other free resources for teaching code out there as well.

Resources - Time and Money

So, how serious are you about learning to code? Can you focus on it full time or would you have to work on it part-time along with a job?

A full-time commitment can be risky and scary. Generally, you won’t have income while learning full-time and will have to pay tuition on top of that. Budget and save accordingly. Part-time is less of a risk, but you won’t be able to focus purely on learning. My hat off to anyone learning part-time. It is a lot of work to balance and schedule everything. Generally, it will also take longer.

I had the opportunity to learn full-time was curious about coding. Learning has always been an investment I didn’t mind making.

Asides from a job, do you have any other responsibilities? Family, friends, pets, hobbies, groups will require your time and energy as usual. How should you prioritize and adjust schedules? What are the tradeoffs?

The only real decision I had to make was for a side hobby of learning music. It’s always been a lifelong aspiration and putting it on pause would ruin a lot of the progress made. Each day would have about an hour for practice, and each week had one entire day code-free for music lessons, errands, and sanity. The trade-off was it took longer to finish the curriculum and some focus was lost.

Conclusion

Everyone’s experience and priorities will be different. So, it depends. No matter the circumstances, the biggest factors are your potential for learning, commitment, and grit. All these factors will definitely play a part in how long it takes.

Don’t compare yourself to others or make it a race. Someone else’s factors will be completely different from yours. Focusing on time instead of code will not be productive at all. Have a schedule. Work towards it. Adjust if you need. Be realistic.

Enjoy the process.

Post by: Chely Ho