Should you learn programming? Yes.
When I was 14 years old, my guitar teacher told me something important:
“You need to learn to sing. Because if you don’t, you’re always going to be at the mercy of some asshole singer.”
His point was about self-reliance. If you ever have any ideas, whether for songs or apps, you need to have some basic skills to turn those ideas into reality.
One of the most common things I hear from aspiring entrepreneurs is, “I have this idea for an app or site. But I’m not technical, so I need to find someone who can make it for me.”
I point them to my advice about how to hire a programmer, but most programmers are already busy and expensive.
Imagine if someone said, “I have this idea for a song. But I’m not musical, so I need to find someone who will write, perform, and record it for me.”
You’d probably advise them to just learn enough guitar or piano so they can play their song.
It’s like learning to drive or make dinner. You only need to learn enough so you’re not helpless.
So, yes, you should learn some programming. Basic HTML, CSS, and JavaScript are enough to start.
I recommend Head First HTML and CSS first, then Head First HTML5 Programming. Those are very fun, visual books where you need to see the detailed illustrations, so get the paper book or PDF.
If you prefer a course and community, use Free Code Camp. Ideally, do those books and this course at the same time, to really reinforce what you’re learning.
You could go through those books or courses in a few weeks, and you’d already know as much as half of the people that call themselves web developers.
It’s a really amazing feeling. The mystery is lifted. You’ll look at all websites in a new way. You’ll understand what’s going on behind the scenes. You’ll know how to do it yourself. It’s really empowering. (It’s definitely been the most rewarding thing I’ve ever learned.)
For an inspiring example see Jennifer Dewalt, who learned to code by building 180 websites in 180 days, with no previous experience.
Next, read my advice on learning JavaScript.
You have this great way of communicating ideas, great ideas, in a way that makes them seem like common sense. Of course I should learn programming. Thank you for the advice!
I know (more or less) how to program. It's SINGING that I find difficult. Any great suggestions on that?
No, really. People think of singing, more than anything, as something you either can or can't. But it absolutely can be learned through practice. See this article for my story. — Derek
Richard
Practice.
Great tip. Although, learning from a paper book will be far less efficient than learning HTML/CSS directly in a browser itself where you can learn mini-lessons and run examples in the browser in realtime.
The paper book is well-written, well-edited, and guides progress at a great pace. Then yes the books will always insist you try everything you learn in the browser, as you go. — Derek
I want to learn css and some other languages but the problem is, you don't have time to learn as you did when you're still a student. I think programming is one of those things where self-study is really effective, where you don't have to attend formal schooling, which makes it really interesting. And I agree it will be very empowering. But I wonder how you fit learning such a skill into your schedule when it's very time-consuming.
Stay up an hour later. Wake up an hour earlier. Stop doing something you spend an hour a day doing now. There's always a way to find a little time. — Derek
Genius post man! The reason you cited in your first sentence is what pushed me to program, and since then I've discovered a real passion for coding.
I still consider myself a marketer first, but also being a developer has opened up so many doors and totally changed the way I think. I couldn't recommend learning to code more to almost anyone.
Yes, I'll take this advice. You sold me with the Wire. Glad to see your blog output is getting steadier. Coming from someone who read all of your posts over this past summer, I'm not ashamed to say. Keep it up. How is everything?
Thanks! All is well. — Derek
I'm still looking for that little idea that I can turn into a hobby that I can turn into a small income generating past time
When I was Living in Germany in 2008, the state of Baden-Württemberg had implemented a requirement to pass a java exam to graduate high school.
Since then, many of the top US High Schools now have an exam in the programming arena.
Many of the top universities now require all students to have at least entry programming skills to earn a degree.
An example is where many Statistics or even liberal arts majors might use an app like R to analyse data, today they will learn this an possibly create their own app in Python or Ruby.
When I speak to recent graduates and current University students who have no programming at all, I tell them to take something as an elective or even from free resources.
I then run across others who have no plans to ever o back to school and get upset thinking their education was lacking because they learned little beyond using a word processor. (and owe $80K+ in student loans) Those people should ask their University for a refund.
These same people tell me they drive a car or ride the train and have no idea how it works, so certainly they will never need to know any technology. This portion of the world will be eclipsed by younger people graduating now and more in the future.
As people live longer, the competition for jobs will grow. A failure to become a little geeky, means you will likely seed your job to younger people.
You may never program again in your life, but it allows you to find solutions to problems and better innovate within the limitations of what is possible or needs to be created. Its a bit difficult if you have no idea how the web works or whats inside your mobile phone.
The days of knowing little about technology aren't over, there will always be jobs at Walmart, McDonalds or Starbucks that probably wont require skills beyond skin deep.
100% agree, programming is the best and most important thing I have learned in a decade - to be self sufficient (or as self sufficient as possible) in not only the music business, but in this world, should be everyone's goal.
There's always something wonderful about learning something! Being an autodidact is a way of life! Let 2013 be the year of polymathy! :)
@Richard Factor: Derek is right. You don't have to be a natural to learn how to sing. I wasn't. But don't just practice on your own -- you risk reinforcing bad habits that way. Find a vocal coach that you can connect with and learn under his or her guidance.
What I've found with the best teachers is that you still have to do tons of heavy lifting yourself through practice ... but you'll also learn a shortcut or two to noticeable improvement right away. The shortcuts gave me proof that I really could learn how to turn my bad singing into good singing if I worked at it.
Thanks, Derek! I'm ordering both of the Basic books per your recommendation!
One at a time! Don't get overwhelmed!! — Derek
can't agree more!!! but tx for sharing your thoughts and thus enforcing my take on the matter...
Thanks, Derek. That's good advice. I know a bit of HTML but this has inspired me to dive back into it and learn more.
Ever since I started taking over the css/html of our site, I am now able to make changes as needed. Yes, it's not pretty yet, not professional yet, the code may not be as efficient as it can be, but it's a nice start and You are right, I do look at the site very differently now.
I know the basics of programming. I need to find some projects to help me practice. Any ideas?
Surely you've got a website idea - something that should exist. Other than that, see this">sive.rs/srs">this article about keeping in good practice. — Derek
Thanks for that nudge Derek. I used to be a programmer and database designer for a bank. In 2008 I quit (took early retirement) to play music full time. Though I loved my job and used a bunch of computer languages professionally something in me balked at learning Wordpress to design my own website. I had had enough. I just wanted to play music. So a friend set up my website using Wordpress and then went on to other things. Now it's wayyy out of date and I haven't a clue how to update it though I keep meaning to get a book. Instead I rely on Jango and myspace. Kind of the chicken way out when I should be doing magic on my real website. Here it is: www.bessiemaeblues.com. Everything you say in that article hit home with a bang. I promise I will find some documentation and learn Wordpress within a month and update that website. Thank you!!!
Beth
May I suggest "Derek's guide to programming. The video series". You've already done the work. We can just leach.
(leech/leach?)
: P
It's clear to me that necessity motivates the most but I'd like to learn programming because I find it to be useful but not necessary for me yet. Is there some sort of brainstormed list of uses to potentially apply programming to ones life? or simply why programming can help as a prerequisite in other fields that may not have occurred to me yet? I'm a huge fan of computers, software, electronic music, drumming... just throwing that out there.
I'll do some research myself, but you've recommended some good materials before... so, I thought I'd ask.
thanks
Usually people have a website or web app they want to make. Otherwise check out Raspberry Pi and see what you can do with a little Python. — Derek
Derek, you always seem to have the insight that is just not quite 'super futurist' enough to be way out there. i have a feeling the advice in this article this the gospel heard far and way of all mastermind internet marketers...in a year or two? : ) thank you! -George
Its great advice, and
Its so easy to learn other programming language if you know any one.
BTW FYI HTML and CSS are not programming languages. ;)
-Motyar
They're not programming languages, but they're the beginning of learning to program! Required basics before continuing on to the deeper programming. — Derek
Thanks for the article. Very poignant indeed. Seems like I am in that very position. What is most distressing is the urgency that comes with an idea, the burning desire to see tangible results that gets me eager to hand over the tech side to someone else while I focus on the strategy. But like you said, I may end up indebted to tech tyranny.
I started to learn HTML and CSS a couple of years ago. After that, I learned Ruby/Rails and some Javascript. Learning to program turned out to be the best thing I ever did.
Once I built a few sites, people started asking me to build things for them, so I started a dev shop with two other people.
Several years ago a good friend of mine had a friend fly up from LA to visit. It was my pleasure to act as chauffeur for a couple weeks to one of my music idols. That's not what this post is about. Thing is, when he went home -- back to L.A. he found a "For Sale" sign on his lawn and his bank accounts gutted.
Why? Cause he didn't do any of his own accounting, nor did he oversee any of his accounting, and he didn't even sign his own checks. $5 million down the tubes (embezzled by his accountant) and he had no clue. He wasn't the only one. All of her clients got hit.
Moral of the story... it's not only programming you need to learn, and singing, .... You've gots to keep your fingers on the pulse -- at least a little.
Grrrrr.... Great example! Yes! I was going to make the accounting/bookkeeping comparison in the article, but your example just said it better than I could have. — Derek
Too many people focus on learning a specific programming language first and get stuck in a rut. Wrong - what you really want to do is learn how to think logically so you can write down what you want the software to do. Every software language has it's own syntax, but they all share common concepts. Learn the concepts first - then learn how to be fussy with the particular grammar of a specific language.
Confused? Look at "PseudoCode", "Structured English" and "Natural Programming" in Wikipedia. All are ways to convert a thought process into some kind of documentation that a person familiar with a specific programming language can use to quickly create usable code.
On the other hand, debugging actual code is a nit-picky process that demands intimate knowledge of every little detail - see http://www.andromeda.com/people/ddyer/topten.html for examples.
Great point. It's a mindset. — Derek
As always a great topic and lots of great feedback. I cant keep up with what I am learning now so luckily my kids are getting helpfull. I agree it helps to do everything ourselves but sometimes ya just gotta let others do somethings and for me this is one thing i will leave for the experts.
Derek, Thanks for sharing this information. As i am a Musician/Singer/Writer/Engineer/Producer, I can relate to a lot of things you mentioned. Currently i pretty much run my own record label and their is so much things to do and learn.
I am constantly looking to obtain as much knowledge of this computer age that we now live in.....Lawrence Welton.......
I find it a problem that I have to know everything I learn or I don't quite accept it or have to micromanage people in order to feel I trust them. In math I had to learn all the proofs of why before I could feel OK about it or in programming I had to learn what instruction set mapped to what machine code down to assembly. Later, I ended up abstracting everything and became tons more productive after I trusted the dark of not knowing and started trusting what others have done. Maybe I needed the foundation? Not sure but I read all these entrepreneur books citing examples where the entrepreneur's skill was more in pulling the right people together and resources etc to make things happen. My neighbor's son is Adam Goldberg and I know he hires the best team and just keeps going to the next thing to make it happen again and again. Maybe muddling in all the muck of details sometimes gets distracting. Its probably a fine line but I wouldn't know because I'm not a billionaire.
Great article. The programming part came pretty easy for me. (Html, javascript, and PHP) I still haven't caught on to the design thing yet. I know css syntax but making it look good is something different for me.
— Derek
Same here.
Necessity is a mother! ;-)
Yes, you and I have both had those DIY experiences long before DIY was cool. (And long after our parents and grandparents did DIY because it was expected and often no other way was available.)
Yes: "I made that!"
(So I'll eat it myself, said the Little Red Hen.)
You know, Derek, the one thing you are lacking on this, and its very telling, is not having a discussion forum here. It should be where people can reply to one another. Why not? Its very you-centric in this way. Why not empower others to talk to each other as we seem like-minded and would behave.
Maybe some day. My friend Tynan is building SETT, which has that goal. — Derek
thought provoking! not just for basic programming, also for other skills!
I made several attempts to learn these things 10 years ago, but couldn't find good books. Thanks for the leads. Once I'm done learning about business and finance (10 Day MBA), Spanish, Hebrew and Orchestration, I'll start working on programming!
Love,
Adam
A few months ago I started making music with zero experience on GarageBand for iPad. It took me weeks to understand what the hell I was doing, but I kept tweaking, combining, and breaking things until I found sounds that struck me. I also held no expectations, so I easily forgave myself for not-so-good music.
I've made a few tracks since I started, but this one (called "You Can") is my favorite: bit.ly/QMZH80. Enjoy!
Programming is a state of mind. If you're a DIY person you can easily learn. If you're someone that prefers to have others do what you can't you'll never get through programming.
Also programming requires much more than just learning keywords, functions and methodology. You can know it all and not being able to put things together. You have to have a decent logic and be able to "think as a machine" if it ever makes sense ;-)
In fact I'd compare programming to learning a language but when you try to speak it people won't make the minimal effort to understand you. ;-)
This said it's definitely a nerdy thing that can give a lot of pleasure to any Asperger's :-D
..another fantastic, informative, quickly digestable, practicle and USEFUL, article.
- I will only add my blessing to your piece as a tech pro - musician - entrepreneur wrapped into one.
Thank you for continuing to be relevant and inspiring!!
;)
Sm
I was with you all the way up until you threw "The Wire" in there... that's only the best show on television. Everyone should watch and maybe rewatch it.
:)
Dude.
I DO love your intentions, but I got ARIEL on twitter telling me to start the New Year with a blog, FB telling me to get more people to my fan-page, CD BABY explaining why I need to invest and LEARN-hello? about more software, STUMBLEUPON, LINKEDIN, and yes HOTMAIL distracting the hell out of me, YOUTUBE, very innocently, recommending stuff to watch, ARTIST HOUSE sending me vids on people I should know? And now YOU!, my bastion of practicality telling me to learn code... I 'd write in my website as requested above - but you're probably, understandably, much too busy to listen, so that would be yet another distraction for both of us.
Keep smilin, Derek
This is a great article thanks.
It's funny because I just started doing this myself. Got a few books, finished one on dreamweaver, and now going through HTML/CSS. Next is HTML 5 and soon java script. I feel like I am doing the right thing now after reading this article.
Great read for the Pecora quote alone! Wise to get in on html5 early, but that doesn't surprise me :)
Here's another thought you might consider. Many people say they're too old to learn to anything computerized. One 64 year old lady repairs her own computer. She replaces parts when needed. She wipes a hard drive clean and reprograms it when required. Those things are just for starters. If the computer needs repair, then she repairs the computer. "Why pay someone else to do what I can do for myself?" is what she often says when asked why she fixes her own computer. By the way, all of this knowledge was self-taught via the internet.
Brilliant! Great example. — Derek
Hey Derek, nice post, good timing. At university I took a computer information systems subject that taught SQL. The major assignment was to build a program for a video rental store. Are the SQL skills helpful when learning HTML? Are there are any good graphics or video material that provide an overview of the elements of a web page and steps in building a web site?
Yes! I left SQL out of the article because I didn't want to overwhelm, but absolutely SQL is quite crucial for database-driven web apps. Not HTML itself, but the stuff you use to auto-generate the HTML from the database contents. As for audio/video, try lynda.com. — Derek
Programmers are nerds. Play yer geeeeetar and stop writing code!!!
I'm joking, I'm a programmer by day. Its really not brain surgery. The internet is filled with free tutorials. Just don't get too involved, or it will affect your musical chops. Learn to draw the line.
At first I thought you were advocating BASIC ;)
I can attest to the points you made. Even though you might not be doing the actual programming, it's important to know how to "geekspeak" with developers. It develops rapport, and you can get an idea of how to make realistic expectations.
Remember also that developers like to create "user requirements" that call for specific functionality of the program. Knowing what to put will help and it helps to be familiar with programming to read one of these goodies.
Finally, if you can speak intelligently with developers and designers, it will add to the efficiency and fun in the project.
Great quote, and really translates well for web development. I think the same goes across disciplines, i.e. back end devs should learn a little design and vice versa.
two bits that stood out there:
You don’t need to become an expert, just know the basics, so you’re not helpless.
“You need to learn to sing. Because if you don’t, you’re always going to be at the mercy of some asshole singer.”
After having people teach me things and i learnt by doing a skills swap session online I found out jobs that took me 2 minutes to do were being charged at $20-$50 a time! The lightbulb went off that the best way to outsource jobs is to know some basics of how to do it yourself else ... outsourcing online brings out the best "asshole singers" who will take advantage of your ignorance.
Wow. Truly this is really great...thanks Derek. True.:-)
Rachel
I agree. That's why I learned to play the piano, so I wouldn't be at the mercy of a rogue guitarist.
I've learned HTML and some CSS.
I try to improve my skills often.
http://www.w3schools.com/ has great tutorials.
You just gotta keep them wheels turning! Life is as simple as that, Simon! Wear your sneakers well and don't ever let THEM assholes sneak up on you! Don't ever get to BIG for your britchers. REMEMBER!
Silly clown, Derik Sivers, I met your voice during 911! You have power, "Lion King!"
Thanks for being you! IM am almost a 70 year young cougar, moving on because of your words! Thanks for being you! "Happy Trails."
Ya but, reality reigns! The man in PIC has hair & you don't!
Love you,
Seasoned Lady http://www.cdbaby.com/cd/generationgap7
I agree. Knowing basic HTML today is like having basic word processing skills in the past. We are barelling ever more into a world where everything is digital and the Internet will be integrated into almost every fabric of our lives (for many that's already the case). There will be more layers and levels of abstraction. More components. More digital languages. And as Linked Data transforms today's Web of documents into tomorrow's Web of data, an entirely new digital world emerges - creating new opportunities, new business models, and new industries. In this world, knowing at least the basics of programming is the new equivalent to just being a good writer. Indeed, at the very least, learning to program will enrich your understanding of modern technology and consequently improve your relationship with the digital world that has emerged around you. And besides, it's super fun; even if just a little side-hobby.
Thanks Derek. I remember years ago when hostbaby put my site up and I had to learn hTML because, I quickly learned that they couldn't do everything ( I knew nothing about building a site!) Now I'm on to learning JavaScript.
i love u derek!!! txs 4 the advice...ur right i know...this way u can also tell better if ur site is messed with (i would imagine)...ur a gift 2 the world derek...xoxoxo
Excellent advice Derek. One needs to crawl before walking and then comes the running.
Regards, Bill
100% agree. You should add Python to your list of languages to go deeper. It's web framework Django is amazing for building any kind of website.
Great article again Derek! Am already half way through my JavaScript course on CodeAcademy!
Cheers
Excellent post Derek and it came just as I've stayed up two nights in a row on Codeacademy which is an excellent resource for learning while doing with programming - and its free. My focus right now is on the html/css basics then I will probably venture into Ruby on Rails.
I even set up a git repository today and I'm going to learn how to use that in parallel by managing my .html and .css files there. I figure by the time I get to the hardcore programming, the repository stuff will be second nature.
Awesome, thanks
Totally agree. Having a basic understanding of some skill is also helpful to setup feasible milestones and tasks when hiring someone else to do the job. No wonder several business owners while training their successors make them work for awhile in each sector of his/her particular business. However, it's important to avoid going too deep into a "satellite" skill, otherwise its easy to get detoured (we'll know cases of musicians that got into music technology so deeply that ended up becoming musical producers, right?)
Yes! I am STILL nervous about programming, and it's so stupid. But as a graphic designer, the more I learn about the digital space, its platforms, its paradigms, the more I realize there is little choice. I need to know how to code, even if it's just for my own websites.
You're a good man Derek, always interested in your adventures and perspectives. This is a brilliant time to be in humanity's mix! Rock on.
Knowledge is power for sure :) But then again, no man is an island!
I agree Derek
When I started writing music I depended on musicians to play all the different instruments for me at the studio. They were always late which cost me more and I did'nt have the time to waste, so I bought a keyboard with 400 voices. I also learnt videography and editing so I could help myself with making my videos.
Derek, You did bring up something that I could really use some help with and thats singing. All my cd's are instrumental but I would love to work on my singing. What or who could suggest a simple How to. Sorry about getting off the subject but singing could help me a bunch.
Thanks Derek, seems like programming is a necessary skill for entrepreneurs these days
Derek,
What a great message. You are one of the most amazing people I have never met. Your knowledge base has taught me more than anyone else in my 66 years. But, the only problem is, I am not able to use all of what you have taught me and that is not your fault. It is my fault because I have never been good at reading and comprehending because I had stigmatism over 500 in both eyes from the time I was 6 years old. Through modern surgery, my eyes are much better now. I have saved and read every message you have sent ever since we connected on CDbaby. So, the bottom line is that I hope, in what time I have left, I will be able to learn what you have given me and pass it on to those who follow. You have every right to be proud of yourself for being one of the few that have made a TRUE humanitarian contribution to this world.
Thanks,
Harvey
We learn the basics in order to avoid being helpless? Yes, especially the essential life skills.
It is an empowering feeling when we understand what is going on behind the scenes and be able to do it ourselves.
We see it all in a new way then indeed, don't we?
"I have this idea for a song. But I’m not musical, so I need to find someone who will write, perform, and record it for me." This is one of the best analogies I've ever seen. Derek, you are such a brilliant teacher.
Thanks Derek! Your advice came at the perfect time!( I actually received a call today in regards to building a new web based company). Im starting to believe you own a crystal ball . lol
I wrote a paper years ago in college about the same topic. I call it initiative, one of the key ingredients to Professionalism.
Peace & Love
Matt
Not only for the entrepreneurs I'd recommend this to anyone who is less familiar with tech. Having basic knowledge of programming will sure help them communicate their ideas well when needed. And I remember my teacher saying Computer is Pen. You can't deny its existence.
Another fantastic post Derek - Keep it up!
Derek I sent you an email as my note got unfortunately flagged as spam. It was some resources/tips. Hopefully you get it and you can post should you deem fit.
Best,
Jaret Manuel
Agree Derek
My personal feeling is that to manage an outsourced project is more of a pain than to learn to program yourself....and much cheaper.
This is so true!
After one year as an entrepreneur I have learnt coding and video editing and can find technical solutions that most technical people can't.
We have developers but I do not feel any more at the mercy of the enlightened. Entrepreneurs should be measured by their ability to learn and not their exit strategies.
I've also ventured into this and am learning C#. Some people sure seem to have similar brains. By the way, on this page, I tried to hit tab to get me back to the top, but the tab is set to stop at every person's comment. If you set it up to go from Name to Your Email to Your Website to Comment, then back to Your name, you have my applause.
Web dev lessons coming up for me soon. Thanks for this post. Read this in your book as well and love the thought.
Hi Derek,
I really appreciate this article - I often find myself going in cycles of helplessness, dreading asking someone for help, being at the mercy of their schedule or vision for what I want, and then ultimately learning how to do it myself and being amazed by how much easier it was than I had dreaded and how fun everything felt once I knew enough to help myself.
Thanks for the reminder!
Clare
Great suggestion Derek and very well presented.
Awesome Derek
I feel inspired!
Nice article! I have tried to practice this philosophy myself, but as I have grown older (I'm 59), I have seen the need to focus more and more on the things I love to do, and less on the the things others can do better. There is also a huge problem with all the software that needs to be updated or upgraded to support my computers and OS (which I of course need to change when a new and faster model arrives)!. I find myself spending too much time and money on this, and too little time on the things I do best and love most. But that's me ;-)
Derek,
I won't claim to be a regular reader of your blog (because I'm really not. At best, I am an infrequent reader,) but whenever I reach your blog, I devour everything I have missed in the intervening time.
Your posts always hit home for me.
What makes me happier is that your posts appear almost immediately AFTER I have done something similar. For instance, I just taught myself (very, VERY) basic HTML, CSS, a bit of Python and Android Programming, and I'm using all that acquired knowledge to develop one of the many apps I have always wanted to develop. Better still, my alphas were (apparently) good enough to get a programmer friend of mine interested and we are now working together to release it to the WWW.
The only downside? Your blog posts make me lazy. Once I've read them, I don't feel the need to write the same thing - especially after you have put across the idea so eloquently. :P
Thank you, for being the Derek Sivers that you are.
Cheers!
DIY has its limits (the old adage that you cannot be an expert in EVERYTHING is still true), but you are right, it is the way to get started.
I taught myself HTML and a I can at least read a CSS page and find where to tweak certain things like font size, style and color.
Java script I dabbled in. Wouldn't trust myself to create it, but I can read a script and know more or less what it does on the page.
In fact, just today my basic html helped me update my site with some promo.
The best thing I get from it is the knowledge that I have total control over the code on my website. It is probably not great code by a full-time geek's standards, but my pages all load without errors, quickly, on any browser, and they look the way I want them to. That's good enough for me.
Dear Derek,
thanks for this post. I totally agree and did it myself. It is especially effective when you manage a group of programmers. When you know what it means to do a specific task you are becoming a better manager. Your demands from your people are much reasonable which makes life nicer and calmer for everyone around.
Best
Itai
This is a great article of yours. I really like the contrast with musicians learning how to sing.
After seeing too many of my projects and ideas fall apart because I didn't have the programming chops, I have really decided to go after gaining those missing skills.
Specifically this last year, I have made huge strides in my comprehension. This year, it's all about getting my building blocks together.
I have been read about your ideas on getting version 1.0 out the door, but the 'Start Now, No Funding Needed' animation really drove the idea home. It had has had a pretty big impact on me since I came across it in November.
It is so much easier to think about version infinity, so I keep having to remind myself to stick with the basics. The video has been a huge help in keeping me focused. I've lost track of how many times I have watched it or how many people I have sent it out to.
Thanks!
-Todd
oh man you have hit on the truth! Loved the point made I have a great idea for a song but I need some one to write, perform...
As always thanks for the inspiration.
I absolutely agree with you. as a musician and marketer I find it necessary to build my own sites and therefore I'm learning programming on codecademy. and while it's very useful, it's very pleasurable too. first thing i do in the morning is going through some Javascript lessons on this site and i love it.
I'm glad I already sing and play guitar, s so I'm independent as a musician.
Been a programmer for 8 years and I wish I had this advice back in my university years - ok, there was no HTML5 then, but the pragmatic approach to programming is priceless! Good thing this applies to other areas (accounting, management, business, etc). Thanks!
Brilliantly said as always..well,i miss the tutorials tht we used to read on the cd baby site at once upon a time :)
Thanks for the Advice, i seem to follow this way of thinking already, and i really do find that knowing about something that will have and impact on you'r daily life is highly rewarding as i not only benefits me, but i can help friends out who have problems regarding a certain issue that i have some expertise in! and in doing so, some friends become interested in the same topic, which is great!
Yea... everyone can learn programming.
Even our middle school kids can do it.
That's why I learn analog :-)
----------------------
Mark Cuban's quotes,
http://blogmaverick.com/2011/04/07/shark-tank-success-motivation/
Everything I read was public. Anyone could buy the same books and magazines. The same information was available to anyone who wanted it. Turns out most people didn’t want it.
I remember going into customers or talking to people in the industry and tossing out tidbits about software or hardware. Features that worked, bugs in the software. All things I had read. I expected the ongoing response of “Oh yeah, I read that too in such-and-such.” That’s not what happened. They hadn’t read it then, and they haven’t started reading yet.
Most people won’t put in the time to get a knowledge advantage. Sure, there were folks that worked hard at picking up every bit of information that they could, but we were few and far between. To this day, I feel like if I put in enough time consuming all the information available, particularly with the net making it so readily available, I can get an advantage in any technology business. Of course my wife hates that I read more than 3 hours almost every day, but it gives me a level of comfort and confidence in my businesses. AT MicroSolutions it gave me a huge advantage. A guy with little computer background could compete with far more experienced guys just because I put in the time to learn all I could.
---------------------
Thanks again for sharing your wisdom, experience and sense. So many of the feedback comments generated from others are also so helpful and inspiring too :)
It's a cool post. I like it. It makes sence to me. I think it's a great approach to life. Tom Pecora's advise is indespensable. Steve Jobs used it to build Apple. It worked for Apple. total control of customer's experience. It worked with CD Baby.
Having a working knowledge of all aspects of your business is an empowering feeling. Gives you a feeling of more control over your destiny. Others feel it's a waste of time, but I agree with you.
I like to be able to understand every aspect of my business. Even if I ultimately will delegate it to others, I think it helps that you have an understanding of the task/role before passing it off to someone else. I hate that helpless feeling having to totally rely on someone else.
100% agree for programming or really any activity: plumbing, singing, running, ... it is always a + for me to at least give it a good shot if only in order to get some sense of the difficulty, some sense of the performance of the pro, etc.
I'm a Brazilian computer science student, who loves the Start-up scene. I've seen tons of really smart people with good ideas who knows nothing about programming, and are struggling to find someone to do the hard work for them.
I've always been found on the idea that if you want to do something, try to do it yourself.
This is a great article, showing how important it is to, at least, understand what is going on and how important it is to have this kind of knowledge.
Right now, I'm sending this page to some discussion lists of entrepreneurs that I participate, hoping to change some minds.
Thanks for the great article
Here is a example for a music website using HTML5 and CSS3 and note at both these web-technologies HTML5 and CSS3 allow for assistive technology and section 508. Assistive Technology is an umbrella term that includes assistive, adaptive, and rehabilitative devices for people with disabilities and also includes the process used in selecting, locating, and using them. AT promotes greater independence by enabling people to perform tasks that they were formerly unable to accomplish, or had great difficulty accomplishing, by providing enhancements to, or changing methods of interacting with, the technology needed to accomplish such tasks. Tommy
Good advice.
Same thing goes for knowing how to do basic bicycle maintenance -- particularly brake adjustment.
This is spot on, Derek! I learned this the hard way a week ago when the lead developer on my team crashed the site and quit suddenly a week ago, the night before I submitted my project for an $80,000 social innovation competition. Time to learn some new skills.
Ohh, how much I wish that you would have written this post a few years ago. For years, I've been finding ideas and then trying to find someone to execute them but it never worked. In fact nearly all the good entrepreneurs are good creators first and good manager later. I realize now this that I need to code myself after so many years. Yes, if you want to be web-entrepreneurs learning programming is Must.
For anything you want to be good at doing, put your whole into it and if it helps, cut the bridges so that you are unable to go back.
Yup, you are completely right about learning to become programmer. I just started some courses in CodeAcademy. It's amazing way for learning. Currently I'm doing javascript, and later will learn python or ruby ;)
That's true. I do everything myself as much as possible, cars, remodeling, web sites, etc. But I did a Druple site on my own (that I barely got to function) and hit a wall. PHP is like calculus to me, I'd rather worship it from afar.
I agree with his basic concept. It's good for a person to be versatile. One suggestion in the article could very well cost you your livelihood, though. There's a famous quote along the lines of "a man should be able to jump start a car, build a fire, change a diaper, change a faucet washer ...". The idea being, not everyone is a mechanic, but it's good to at least be able to change a tire or jump start a car when needed - to have basic skills in a variety of areas.
By that line of thinking, it's good to be somewhat familiar with shell scripting or Office macros or something similar. HOWEVER, he describes writing web apps for his BUSINESS web site. Rudimentary programming knowledge should include knowing that you shouldn't expose your livelihood to every script kiddie on the planet by writing business web apps without knowing what you are doing. Basic skills in any field include knowing when to get professional assistance. Unfortunately, these days, many coder wannabes learn the very basics by writing web applications, exposing themselves or their employer to significant risks that any competent programer would avoid. That's exactly backwards. Learn on your own desktop first, then let others around you use your programs. Then learn security before exposing your business databases on public internet.
* There's also the whole left brain / right brain thing. I coud never learn to play music, as I simply have no aesthetic sense. Calculus comes easy to me, though. Half of people can never learn programing. They just aren't wired for it.
Hi again Derek ! I agree with you . If you want to be independent and do it yourself the only right thing is to try to learn step by step new things . Until seven years ago i used to play only the acoustic guitar, but it missed something : deeply i desired to learn the electric guitar ( always self taught) . I began and i liked very much in fact since then i play two hours a day( before i played much less), but that was the beginning to learn singing, homerecording, a week before recording by myself my first album i learned the bass guitar, how to publish the record , how to find someone sold my cd and so on...........the same thing with podcasting finding some radio fm and web to publish the podcasts, self produce its.
I would say : do it yourself could mean discover talents that you didn't know in yourself , remain independent and improve your self- esteem.
Thanks again greetings by Pietro Cesaro
Had an experience like yours except in real time. We (me & my sister) were invited to open for a legendary band on tour. Iup to that point only played guitar and she was the singer. During our opening song, about halfway through she turns to me and said "You'll have to handle this cause I can't and abruptly left the stage . I played every guitar song I could think of the next 30 minutes to a less than friendly crowd. At the end of that disaster we lost future money contracts. But I knew from there on what I had to do namely, start singing. And out of that bad experience, a now confident new singer/songwriter (me) was born.
I'm scared... :)
Great post, Derek.
Being a programmer, myself, I can really endorse what you say. I would definitely miss those skills if I did have them.
Totally agree, this is why I think courses like MakersAcademy.com are going to be the next big thing - you can learn stuff online but if you truly want to get a leg up, dedicating some time to really go through everything is totally worth it.
Always nice to have a supportive reminder. Thank you!
Couldn't agree more. I'd add one more thing - to make sure the website you build (or tinker with) is something you have a passion for. Working through the inevitable bugs requires a great deal of persistence and you'll only have the patience if you're building something you love, or someone you know cares a lot about. The confidence that self-reliance brings is immeasurable.
You know it ...brother Dave M .... Gignation.com
Years ago, on a day when I had no fear, I called on a potential client that turned out to be even bigger than I imagined. On a totally cold call, the buyer for what I was selling saw me and we had a warm, informative conversation for both of us. He asked great questions and at some point I started into more detail based on the quality of his questions. He stopped me and said to the effect: "I don't need to know all that you know. All I need to know is enough to be dangerous." That meant quickly sizing up who was full of shit. I wasn't and it became a profitable relationship for both of us. The greatest value was the lesson learned from the few words above. "Know enough to be dangerous." The programming languages and supporting programs I have learned keep me productive as well as "dangerous" to anyone trying to compromise my clients' sites. Thanks for the reminder, Derek.
@Richard Factor. When I married my wife 7 years ago, she couldn't carry a tune in a bucket. Now, after 7years of being married to a musician, she's much improved. This is with no lessons, just having (live) music in the house.
Derek thanks programming yes a must needed skill those reference books time to dive in and get the basic thanks
Happy belated New Year Derek!
I became a quasi plumber once; ended up costing a bunch of money and time, but did pick up some basic knowledge. Decided better FOR ME...to call a real plumber when warranted.
When clients ask me about software and learning different products, I advised them that if it was something they were going to do repeatedly, or everyday, that it is definitely best to LEARN IT THEMSELF.
However, if they were going to have to deal with it every year or so, that it's probably cost effective to have a "specialist" do it. {Reasoning from experience that when I take the time to learn something, and then don't deal with it for 6 or 8 months, I get very frustrated because I know that I can do the tasks required, but it takes so long to get anything done, and frustration will set in.}
I think some of us are more geared for certain areas to LEARN....... & then successfully implement.
With that stated your post has me thinking about my situation.
I have several sites that need MASSIVE attention and action.
1 http://ergo4dummies.indoff.com/
2 http://myinktonersource.indoff.com/
3 www.yourfavoriteteamchair.com
4 www.ibsmcorp.com
5 http://tulsaceltics.blogspot.com/
Actually, #1, #2 and #5 are Blog Platforms that I am able to post on; but even they need massive work to gear towards profit making.
#4 is my MAIN AREA that needs focus and your blog perfectly captured what occurred there; my "TECHIE Programmer" had to remove himself due to his growing family and workload at his full time gig; so I'm left with my DYNAMIC website that hasn't been so dynamic!
This site is in WORDPRESS which I know some very basic things; but have no clue how to switch out the rotating images on the banner, etc.
I'm going to read your advice you link to about hiring a programmer. I know the basics of HTML. As in , I understand and can do this if necessary:
http://www.w3schools.com/html/html_intro.asp
But I question whether I should spend my time on learning more "CODE" "Programming" rather than focus on the CONTENT, and writing....and business building.
As always, I love when I see an email from you as I know I will read it...and learn from it. Thanks!
Thanks for the programming advice. However, as busy as I am, can you recommend video/DVD instruction instead of books (or maybe a combo of the two)?
Look into http://codeacademy.com/ and http://www.codeschool.com/ — Derek
Derek: I totally agree with the self reliance idea. It seems a little overwhelming to learn new things especially when it comes to computer technology but we have to get over it. My friend for instance who is in his 60's talks about changing careers from a very mechanical background and is getting tired of it. I told him to take his knowledge of cars and translate it into buying and selling car parts etc. on ebay or some other way online. I think we tend to sell ourselves short, so thanks for the inspirational words.
I'd also recommend http://codeacademy.com as a great resource for learning web programming.
Another benefit is you build confidence in your ability to take on & learn your way out of any challenge.
Once again you've hit the mark, Derek! I have been wanting to learn programming, but had no idea how to start. Take a class? Ask my brother, who teaches it at high school but lives too far away to sit down with me? (and probably wouldn't have the time anyway)?
An uber-successful businesswoman of the '80's once said that the most important thing she learned in high school was typing. In today's world, I would say that the essential skill of the 'teens' is programming. (Our decade is now a teenager, being 2013).
Thanks for giving me a starting point, Derek!
I'm a big Head First fan great suggestions! I've read the Head First Java, Programing, HTML-CSS-XHTML (old version of the one you mentioned), Algebra (even this was very good!) and lastly Javascript. The only one I would not recommend is the Headfirst Javascript one (the old one, there is a new one in the works called Javascript Programing). Great suggestions Derek.
Great article Derek. I used to take programming classes when I was younger and as I progressed started to realize that my brain it seemed was not built for programming languages and math for that matter. As a result I changed majors and studied finance and management and am now an entrepreneur. My hesitation is that if I wasn't able to learn programming taking classes, do you think it is something I could actually learn on my own and under my own instructions? I'd love to know your thoughts on this. Thanks.
Jeezy peezy, you've jumped the shark here. Why, when there are lots of good content management platforms out there, would you spend time learning how to program? Did you tell them about product specs? Usability design? QA? And everything else that goes along with it?
By all means, figure out about hosting, have your own website and know how to maintain it, how to use a text editor to make tweeks to css, but to build something from the ground up when apps make things plug and play and give you more features and functions that you could ever hope to code by yourself?? That have been battle tested, open sourced, and will be continually updated?
Hey, all smart band members out there, go spend your time learning code from the ground up. Leaves us more time to write songs, record, market, and tour....
My conscious made me write this post. My competitive side wanted me to shut up.
KP
www.JessicaProuty.com
And hey, the spam catcher thinks this comment is spam... maybe the universe is telling me not to post this.
Every time I read one of your blogs, I end up sharing it on Facebook... Thank you, Derek! You ought to be famous or something.
Specifically... Your ability to see the world how it actually is, and take the next logical step blows me away. You make everything seem like, "Duh, of course!" But somehow it's not.
I have been taking your advice since befor 1904 and couldnot have thanked you more.There is a book and possibley a movie in my future. I am most grateful to you.Sincerely,Flo Dreyer
Derek,
Thank you so very much for the information! I have decided to totally re-design my life so I can leave the 9 to 5 behind and start doing what I really love which is my music, travelling, creating a blog cast, helping others, designing apps for smartphones and whatever else I feel like doing and your information arrived at the right time.
By applying the 80/20 rule that I picked up from Mr. Tim Ferriss, I do believe that learning even the basics of computer programming will allow me to apply what I pick up from the materials you have presented and use it for application development that I hope to try later this year.
Thank you so much and I hope you have an amazing 2013!
All the best,
John Randolph
You know how to do it all, Renaissance Man! I think the crucial part is devoting the time to internalize those things that we need in order to move forward.
Great advice as always, Derek. Thanks!
But the wire is a really good show! ;) lol. Seriously though - great post. When I was starting out as a singer-songwriter, I was advised to learn guitar for the same reason - so I could always play the gig. I thought I'd never be good at it, but I put in the time every day - even if only 20 minutes. Sometimes I couldn't physically play more than 10, but here we are, 17 years later, and I haven't stopped. And like most things, there's always more to learn and ways to improve. Thanks for the reminder that we can do whatever we choose! xo
Man you got me at the right time. I am at a cross road where I have to decide "do I do the work or hire ?" I have been ripped off by a couple if clowns in Edmonton who tried to hi-jack my site in the past and that why I did the work myself. But you are right about know what is involved. You don't go out and buy a car blindly do you ? This your business .... so learn it to earn it !
Derek,
I always love your posts. Always...but...
Do you really think HTML and CSS are still the first place for musicians to start in these days of WordPress?
I learned HTML in 93, and I know a variety of programming/tagging/macro languages--including CSS, Javascript, Word VBA, and Autohotkey (Windows scripting)...these days, I would send musicians to learn Wordpress, basic SEO, and tools to automate their social media and syndication of content--like TweetAdder, Tube Toolbox, Roboform, and Aweber/autoresponders. In short, I think HTML and CSS coding are made virtually obsolete by WordPress.
I believe a musician can bypass all the programming languages you mention by learning WordPress. If they then picked up a few of the tools I mentioned above, they could then then also minimize the time spent on social media.
It makes more sense to me to learn only those things that have the biggest impact to their music promotion with the least amount of time investment. Time becomes a valuable commodity when you have to create/record/perform/promote music as an indie artist.
After you create your website, email lists, social media sites and link them together, you realize that what you really need to build a fan base (and a music career) online is a steady stream of new music (and music things to buy)...that you can then syndicate across your social media platforms and promote to your email list.
Hour for hour, this is where I think musicians can best spend their computer time...and to you use your own advice, I wouldn't learn languages unless programming makes you say "hell yeah"...
Interested in your reponse,
Brian
Derek, you are 100% right. And these days there are a lot of free resources to help. Personally I like http://www.thenewboston.org which has hundreds of free video tutorials on programming. I'm not associated or affiliated with them in any way, just sharing an amazing resource that I'm using on my journey to becoming a programmer. I'm still working my way through the 100's of videos they have on php, jquery, and android programming, to mention a few.
Earlier this year I decided not to hire a team to build an app for tunii. I felt we either had to include another co-founder who could do or I had to build it myself. I'm still learning and it's a ways off, but if I can do it myself, it would be very empowering as you point out in your article.
While someone might feel their idea can't wait and they need to hire a programmer now, ideas will continue to evolve and it will be very expensive to try to hire someone else to express them. This is why VC and investors typically only invest in companies that have strong tech foundation with at least one or more programmers. And they are absolutely right to think this way.
It might scare people who haven't gone to college for programming to take it on, but these skills are learnable with persistence and at the end of the day, it's what you can do that counts, not the school you went to.
Programming is the single biggest expense associated with tech start up. Eliminate that by doing it yourself and partnering with others who can do the same and the world is your oyster...
Great Advice Derek!
I've found this to be very true and I feel an essential especially for today.
Could not agree more about the empowerment. I wonder if your skilled ability to communicate your ideas was enhanced by programming? I learned basic programming as a kid due to my love of video arcade games. It changed the way I look at the world and openned me up to philosophy and helped me to understand problem solving from a while new perspective. I hope our public schools soon have this as one of the basic requirements due to the fact that it helps us understand logic and ourselves in a whole new fashion
... I agree to Derek's life experience. Too often children are educated by kind of "you cant this or that".
Learning many skills in life encriches it and it gives one a better understanding about in which time and society you live...
The idea isnt new... it remembers me Musashi Miyamoto... ( http://en.wikipedia.org/wiki/Miyamoto_Musashi ) and "Go Rin No Sho", the "Book of Five Rings".
The rules one can read in this book, written by Miayamota in the spirit of a Samurai codex. One is to learn many different skills in life...
http://en.wikipedia.org/wiki/The_Book_of_Five_Rings
Musashi wasnt only an excellent Samurai, he even did painting, poetry and Ikebana (kind of Japaanese miniature gardening)...
The rule of Miayamoto is simple: All what you do, do it 100%. Its not splitting your energy at same time into 1,000 directions (a methaper). Concentrate on what you learn, and do this 100%.
But as soon as you are qualified, move to the next to learn... a kind of "LLL princip" (LLL = Long life learning) for our modern times... :-)
The book is still available (at a very cheap prize). Probably one of my best investments in life I ever did: http://amzn.to/VZYom0
Enjoy it ! :-)
Thanks for the post! I agree with you.
Being able to program gives you much-much better understanding on what's going on under the hood. It may be not needed for your current activity, but as computers become more and more widespread you gain more awareness which improve quality of your life in general :)
I remember after learning how to program using WinApi (at that time it was Windows 3.1), I was very surprised how could I work with the system without this knowledge... I become more efficient just as a user.
Also as an entrepreneur, one time you'll probably ask for professional developers to do something, or hire someone. This knowledge, even rather basic, allow you to speak the same language and detect some bullshit (if you're not lucky with developer). This gives you confidence.
And of course programming itself is a great joy of exploring complex things with almost instant feedback :) I do not want to play computer games for many years because I can program and this is much more interesting for me :) Well, all the life is much more interesting than games.
One more thing to say: it seems that best programmers are self-taughts. It doesn't mean that anyone who starts learning Perl, C++ or JavaScript by book will become cool hacker (it the original and proper meaning of this word), but it's a proper start. No one university makes you a programmer, you can do it yourself only. So, don't be afraid if you have such a dream. Just start!
Not all of us have the time for this, but those that do can certainly benefit!
I just opened your e-mail a bit ago. Your message was exactly what I needed to hear today. You have a habit of doing that, Derek! Thank you, thank you, thank you for continuing to share your insights. You're truly special.
Yes!!!! It is such a good feeling to be NOT helpless. It is even astonishing how many women look up at me because I can create a website ( with the iweb programme::)). Girls come on ! You can read and start creating ::))!!!!!
You are absolutely right. Even for our project, we understood that although making our website by ourselves (We didn't have a lot of knowledge of website programming) takes a long time, but it pays off later. Thanks Derek
I am afraid I have to disagree with this post. Maybe it's just a matter of terms used, but "learning a bit of HTML" won't teach you to program.
And more importantly, you will not get a real idea of where the complexity lies in developing an application.
So when the programmer you hired to help you with your enterprise starts talking about error logging, or architecture, or DB design, or security, or scalability... you will think that he is just making stuff up, because your HTML page sprinkled with a little JS didn't have anything like that, and it works!
I suggest something different: study how to design and perform tests. This requires a more general sets of skills (i.e. you are not tied to a specific programming language or framework or product) but will prove way more useful in assessing the quality of what your programmers deliver, and will also help you express your idea in terms that are less vague, and provide some clear direction about what you expect to get for your money.
You mean well with this comment, and in some ways I agree, but for a later stage. FIRST, and most importantly, this is about BEGINNING - about empowerment. For people to realize they can create the kind of things they consume, to know they can. Then they can expand from there, and go into “where the complexity lies”. — Derek
Hi Derek,
You touched my geeky nerve! To add to your post, I suggest Twitter's Bootstrap for web development, and power it with any back-end like Ruby, Expression Engine or my fav Wordpress.
Cheers
Tazz
http://twitter.github.com/bootstrap/index.html
Derek, your sentiments in this are EXACTLY like mine. Me and you are like brothers from another mother or something. But then, great minds think alike.
Doing things yourself is exhilarating, but sometimes the burden we put on ourselves is too much for one person to bear and you just need relief. The problem comes in (when it's about) trusting someone else to understand the "flow of business" like you do.
Damn, I forgot to sign my previous post.
There your are.
Derek, Man, it's always great to read new posts from you.
I learned HTML back when I was 16. I think it was HTML 3.4 or something, that was before javascript. Programmed a couple sites just for fun.
Then long years passed when I didn't touch it and I needed to know how to use it again.
I found my old reflexes back. Bought a couple books and immersed myself into them. Everything seemed to have change, except for the logic of the theme, which is really what I find the most important part in learning anything (found that out when I was studying languages): get the inner logic of the matter you're learning and the rest is just a matter of knowing your vocabulary.
Now I use mostly wordpress which I find so much easier for updating but I know how to tweak themes and how to build a back up site if my WP breaks. I love learning stuff.
Thanks for the book recommendations! I had to take over my various projects' sites a few years ago. I had already taught myself enough HTML to tweak and update, but I want to start from scratch now. I was finding it overwhelming and I think the right book will help.
Great article per usual. Think this might be just the kick I needed to start learning.
GOD leads each and every one of us on HIS journey planned out for the same and not until HE knows I am ready for a next step in anything does HE bring the same to my sense of awareness. So it is with what you dropped in on my e-mail box today with what I just finished reading. Aside from my agreed upon fetish of editing everything as I read it from how it is written to the point of how it should be written, your message was concise, to the point, aimed directly at me, my state of being and where I should be making my next step and steps in my livelihood.
Six hours ago today in my time sphere I told my father I was ready to enroll in another class or two to begin learning something beneficial for and to what I wanted to do for a living. This was at McDonald's. I came back home after this, rested a bit, watched a little bit of the NFL playoffs, brushed my teeth again {another fetish of mine since I was only a few years old}, sat down and logged on.
Yes, your message has been here for a couple of days. Much as I said above, the time for my seeing what you had to say was not yet appropriate in HIS eyes. Now, the time {forgive me my use of a very old cliche} is here!
For several years I have known I wanted to create web sites of several different sorts. I went to college to learn as much on two different occasions and both times dropped out unsatisfied with the manner and style of how I was being taught I knew was something I needed to know. Time came. Time went. Other facets of my life got themselves in to order with all of this and all of everything else bringing me to my moment of enlightenment just mere moments ago. Thank you.
GOD Bless,
Curtis Sulaski
Really motivating and true. I basically am doing this on bass guitar because I'm able to do everything musically except that - and finally I just said, it's an instrument. I can learn it. And the de-mystification part is really huge. I find that to be really important - so your advice about programming -something that I've always felt was in some weird "other realm" that I would never be able to do or understand- is really timely. I don't look forward to starting it, but I know once I do, I'll relate more to what you're saying here and feel empowered. I'm kind stoked. Thanks for the tip.
Thanks Derek...You're awesome!
Hi Derek,
Great article. Inspiring as always--reminds me that my website needs updating!
Cheers.
Timothy
I agree with this article totally. I am bias though, I think everyone should learn some of the basic coding languages basically, lol. It is good stuff to know. Everyone wants to build a website from one time or another or have an app idea, but few have the money and connections to get it done right the first time, if at all.
Derek, I could not agree more with you on your article. Will take up HTML 5 some time soon, when I can carve out enough time between my full-time, part-time jobs and chores my spouse gives me...
Thanks for the article.
Most of us are consumers, not producers. We buy food, we don't grow it or harvest it or hunt it or even prepare it. We shop for clothing, we don't make it. We watch TV, we don't create shows. We listen to music, we don't make music.We go to jobs( most of which we hate), we don't create our own sources of income. We watch life, we are not living it. Then we die. With regrets.
Derek, you are an inspiration of how not to do that. Thank you.
Joe C.
Hey Derek,
thanks for this article. I totally agree with you as I've had to embrace the DIY ethic for similar reasons. Honestly, ONE of the reasons that I stayed with CD Baby, versus going to Reverbnation or some other music distro site, is because of your blog. You have the most timeliest and relevant information out there. Keep doing what you're doing!
Thanks, Great Stuff !! I was thinking about going to school for this.....may help me to make a choice, computers or Business !
Another fantastic post Derek - Keep it up!
There are a million ways to pet this cat. My two cents worth and by no means am I an expert (far from it). I completely agree with the top down approach of learning HTML/CSS (and Javascript or Jquery) to start. It is important and it is a great spot to get your feet wet.
-Shay Howe of Groupon and a teacher at the Starter League (I attended there in Chicago - formerly named Code Academy) wrote a beginner guide to HTML/CSS - http://learn.shayhowe.com/html-css/ and he has an advanced guide you get signed up for that is soon coming out.
-Jeffrey Way of NetTuts has an awesome 30 day free HTML/CSS course
http://learncss.tutsplus.com/
-Sublime is a great editor and Jeffrey has a video series out on this as well. tutsplus.com/course/improve-workflow-in-sublime-text-2/ There are other editors but Sublime is quite popular.
-If you want to get into Ruby: Chris Pine's "Learn to Program" is a great start. This book is referenced in another suggested step in a moment.
-I believe the following link is an awesome set of steps to learn Ruby & Ruby On Rails. It is not the only way but... I think it is good. It is involved but it will be worth it:
http://astonj.com/tech/best-way-to-learn-ruby-rails/
-A consideration to inject prior to the Well Grounded Rubyist (Step 5) would be to do the $200 Pragmatic Studio Ruby Course http://pragmaticstudio.com/ruby
-Somewhere along the way you want to get some basics down for Git. Pro Git (free) is solid: http://git-scm.com/book and CodeSchool.com (Awesome Resource that is worth the subscription) has a Git Course now.
Other Considerations:
-This is a new online Rails resource so I don't know how good it is.
http://xyzpub.com/en/ruby-on-rails/3.2/index.html
-Ryan Bates RailsCasts.com is amazing.
-30 Days JQuery http://tutsplus.com/lesson/hello-jquery/
Rails Schools to consider:
You don't need to go to a school but for some it is a great option.They are popping up everywhere now. Starter League, BitMakerlabs.com (here in Toronto) looks amazing as I know some of the people teaching, gSchool http://www.gschool.it/ (6 months), and there are others in New York, Seattle, and San Francisco that I know of.
This list may seem overwhelming but start out small and if you are serious you will carve out your path and learn to make next steps.
One step is better then none.
Best Success,
Jaret Manuel
Couldn't agree more Derek. I'm 56 and taught myself how to build synthesizers in high school. When computers came along I taught myself BASIC and had a DOS DAW with a Commodore 64. Later I learned how to build computers and now have an amazing personal studio. I taught myself HTML, Flash, Photoshop and built my own website and started my own record label. I took a bunch of classes last year in composition, orchestration, counterpoint, writing for commercials etc. Even though I've been playing piano for almost 50 years I never stop learning.
What does all this mean? When I stopped listening to the voices in my head that said, 'I wasn't good enough'...'that I would never be as good as so-and-so'...that I was 'too old'...'too young'...'not smart enough'...'not talented enough'...When I learned patience after the computer crashed for the umpteenth time, or when my fingers felt as though they would never do what I wanted them to do. When the Art that is Music finally began to make sense and my musical horizons began to widen....
When all this happened, and more...I realized that THIS step is the only step there is, and that if I give myself WHOLLY to THIS step there will be growth. THIS is where the joy is, THIS is where I can make a difference to myself and those around me.
It's paid off in ways I could never have imagined and the joy of it is, that it never ends.
I remember when you started CDBaby. Job well done Derek.
Can't thank you enough for the mailings I have received from you so far. I am 60 years old and although I would not consider myself to be a grand financial success my life has been one of constant curiosity and learning how things work. This article, like the others, I will share with my children and my friends. Thank you
Hi Derek.
Thanks for the article - inspiring as ever... Funnily enough, I do have a great idea for an APP rooted in my Collective Songwriting method. With my current work/life/family/music/yoga balance I might just get it made by the time i'm 90!
Andy
I agree with the concept, but too many people out there are "tech fobic" and what takes you a couple of hours to learn could takes others forever
It is so true! I couldn't agree even more! A lot of tech entrepreneurs have no basic programming skill, so if their programmer leave them, they will become totally helpless.
True dat!
(Although I quite enjoyed "The Wire".)
Cheers,
Wolff
I am a student,but I am not major in CS.I learned Java before.Maybe i can learn some about html5 and css3 and js
Thanks Derek, You remind me of a book by robert
Greene am reading "Mastery" it says it all.
Derek,
I learned programming along time ago which led me down the path of so many other things - especially in the music business. Not only have I saved money by having my own server and building my own sites, but I have made money building out sites for other people. Great Post...
So true, I have a good example of a similar thing I just did. Years ago I did 5 episodes of a local tv show put together a great team to work on it, but getting everything done took more time that it should have and 5 episodes was all it lasted. So back in the fall I contacted the station and said hey do you want me to do that again they said come in lets have a sit down, ok! This time they said they wanted something a little different but it had to be more timely. So off I went to put together a new team, well after un-returned phone calls and meetings that went no where I went out got my own equipment and taught myself filming & editing etc. Now they have me up to doing three shows and I am having a great time. Lots of nights with no sleep but that's the price ya pay! Sometimes if you want it done just learn what you have to and get the job done!
Bravo! As a programmer, I've always felt that everyone should know something about programming and be able to do basic things, the way everyone should know how to do arithmetic, write an essay, or know about atoms and DNA. It's not necessary for everyone to know enough to be a professional accountant, novelist, physicist, or geneticist, but we should all know the basics of how our world works.
Thanks for another great article. I recently started dabbling in javascript using http://www.codeacademy.com. It's a free site to teach you programming. It includes courses on HTML, CSS, JS, and a combination of the three for projects. I've found that I quickly lose the syntax unless I stay active. Lucky for me, I can easily review old lessons.
As always, Derek, your advice is excellent.
I am a writer - and a senior on limited income - and just now my needs are on a more basic level. To give you an idea, I have a cell phone, but can't program it; I "designed" my website - but did not create it; am organized and logical but not a numbers person. And - my techie has moved to Indiana!
I'd like your advice on an inexpensive way to bring myself up to par on the use/handling/management of the digital tools I must use (cellphone, i-pad, and ibook)
Thanks for being there!
Ariel Joseph
It's always great to get your input on all that you do. Thanks a ton Derek. I have been reading your articles for years now. Thank you a bunch. I am trying to teach myself After Effects right now. And perhaps with that and HTML i can make a real interesting site. Thanks as always
QBASIC stilll lives!
Thanks for the information! Your recommendations, as usual, are easy to understand, and make real life sense. I have wanted to look at programming more for myself, in order to do what I want with my site. (Right now they are all not even being used...) with darkness still upon me in AK most of the time, some stimulation for my mental self is always welcome.
I ordered the books, and will give you an opinion on them after I read them. I am truely a programming virgin, so, it will be a good thing for me to finally know.
Thanks again!
Hope all is well with you and yours!
Marla
Its always helpful to work with recording artists that have an insight on music. Some may no longer be performing or contributing and may well be inspired to teach or work with you if there is an insentive for them. I've worked with an artist and have learned so much in production as well as writing songs and keeping them simple enough for anyone to understand what is being communicated through the music. Just an idea.
Hi Derek,
This article really spoke to me. I am a songwriter playing on the streets of LA right now and learning that I do not want to play on the street, I want to play in a nice venue where there are heaters and free food. I had this grand idea that hitting the road would not only increase my romantic appeal it would also make me into a true songwriter. Wrong. Songwriters play shows, collaborate with other musicians, generally network, and most of all, they write songs. I am learning that it is worth it to do it for myself because no one will do a better job on my behalf than myself. Thanks for your writing, it has always moved me to better things.
Chrstina
Great post. After spending a year or so in the tech start-up community, I've come to appreciate the value of being technologically capable. You'll never become as good as a professional developer (unless that's your intention), but you'll know how to communicate and work with engineering talent. If you're good, it'll also allow you to prototype and build minimum viable products - which is really all you need to test your business idea.
I've always found self-learning though books or online quite difficult - bootcamps and courses provide the structure I need and force me to be disciplined. This Quora post provides a great list of bootcamps & academies around the world for others looking to learn basic programming: http://www.quora.com/Programming-Bootcamps/What-are-the-short-term-3-12mo-development-bootcamps-academies-around-the-world
thank you! bought the book.
Code Acadamy has a great really-really intro course in Javascript, having the additional benefit of being free and self-paced: http://www.codecademy.com
Great advice! Having the opportunity to sit with/get tutorials from coworkers at my company on their specialties has made a vast difference in the way I manage projects. It's so much easier to understand/communicate the complex inter-relationships between individual contributors when I have a basic grasp of what they're being asked to do!
I am going to start now!
Good advice! I learned guitar cause I was tired of dealing with crazy (namely always trying to "hook up" with me) guitarists - LOL Once I got the basics down I wrote my first song," Sister Sister", in 4 months and to date it's the only one I've ever had on the radio so far although I never play it anymore because it seems so sophomoric! It also gave me the independence to be able to play anywhere anytime solo. When I was a singer and songwriter without guitar skills I always was dependent and now I'm FREE and loving it while I look for the perfect musical accompanists.
Basic programming will suck you in!! You'll end up quitting your day job for it lol. That's at least what I'd like to do ;)
Thank you for this. I've decided to build my own desktop computer instead of buying one. :)
Derek,
It took me a while to get to the point in programming where the "magic" disappears.
The magic is the thinking that programmers are doing something that I couldn't learn. Like you say, do enough basics, and the fog will lift. Pretty soon, you'll realize that a successful program is written by somebody who focuses and sticks with the project WHILE they get tons of help, design input, user feedback etc. They keep tweaking it.
So, if you want to make magic, learn how to stick with something until it gets painful - then go to bed - but know you'll get back on it in the morning. That's the only way you'll ever make anything worthwhile with computers. You don't have to be fast like the hackers in the movies. You have to be thoughtful and patient.
Thanks for the post and encouragement to those of us who sometimes lack patience to stick with something new.
Great Advice Derek. I could not agree more. A lot of people think that they can simply outsource all the technical stuff. The problem with that is you won't know if the person you hired really knows what they are talking about. This has happened to me more than once on the programming freelance sites.
At some point you have to roll up your sleeves and dig in yourself. An online business that outsources all their technical tasks is like a band that outsources all their music. You have to bring something to the table or you won't last long in the business.
I have the "2 week rule" with any technical task. I spend 2 weeks learning everything and doing it on my own. Sometimes the task gets done, sometimes its much harder than I thought. But it gives me a deeper understanding of what the technical challenges are and how they can be solved. This helps me tremendously when I'm looking for developers to hire. I can speak intelligently about the task and can track programming B.S really quickly.
The Head First book suggestions are great. That's where I started as well and have learned things that seemed too complicated at first.
Now if they can make a Head First Series for Music....life would be perfect :-) Thanks!
Didn't have time to read every post to see whether this was mentioned, but I took an online course in Python programming (and one in Statistics & one in Physics) from a site called "U-dacity" (run by some folks out of Stanford University, I believe), and it was simple to follow, structured very well for beginners, and FREE!
http://www.udacity.com/
Their primary goal seems to be to make the information available to everyone--and I really enjoyed the format.
They use YouTube short videos to get you through the instruction, but it was also set up with little quizzes as you go. No structured timetable, so you could go at your own pace.
Recently they have added downloadable video packs for (those of us in China) who can't get to the video as easily, or people who don't always have a reliable internet connection.
Since it's "at your own pace" you can start anytime, and there are forums to discuss problem solving, etc., that I believe are still going on. The course instructors still check in on those & answer or direct the conversation if/when necessary.
You even have a final exam and are awarded certificates based on how well you did when you complete it.
I had fun with all three classes and will do more in the future.
It is really helpful to be able to write and edit code myself - I shudder to think how limited I would be if I couldn't.
Why no mention of PHP? Are you one of those PHP haters...
I know html. I tried to learn CSS, but as a graphic designer, I feel it's wrong, because as a visual person, I want to rely on my visual skills, preferably without typing coordinates in source text. I can hardly wait until CSS will be replaced by object oriented CSS, if ever. Maybe it already does exist? Anyway, there's something unnatural about a graphic language. It shouldn't be that way.
Hey Derek! You are absolutely right to jump into new territories and begin learning new skills. I believe every musician or artist had to adapt many years ago when myspace was huge. I didn't know any html and quickly learned some basic coding to keep up with everyone's fancy myspace / artist sites, some were just amazing and truly pushed the creative boundries. It opened the doors for me to visually see what artists of all backgrounds could actually offer the world besides just their music or pictures, so to me, the time of myspace was the most exciting for filmmakers, musicians, comedians, etc. and all the artists could speak and exchange ideas, until facebook killed the idea for the masses. Now I am still applying html coding to my current websites that I learned while having to adapt on myspace many years back! Coding is such a bonus to know and apply in the world of promoting any artist or product on the web! Thanks Derek for reminding everyone that the DIY ethic is their most important asset in the business.
Yes, I wish I did know but being a girl and not to literate with technology, our website sits un updated while in need of serious updates and progress...which doesn't build our reputation well and it is endlessly frustrating to not know how I could manage it but programming is a hard language for me. Failed it in school.
As usual Derek you are wise beyond your years. However, for an old dog like me learning something new, and something complicated like program does not come easy. I have expanded my knowledge base with many new things but courses like a new language or programming is a bit of a stretch for me. Thanks for the advice thou as it always makes me think ahead.
Love this, “You need to learn to sing. Because if you don’t, you’re always going to be at the mercy of some asshole singer.”
....absolutely a great line. Fits in so many other areas of life!
As usual you're right Derek and the thing is..its not such a great mystery...in this day and age its the same as being able to read english print or knowing grammer Like wot I learn't at school iNiT? :)
JKL
I am a singer/songwriter and computer builder and I learned BASIC on our family's Apple ][e... it is a good thing to know, or process to go through I should say.
I wrote this program in High School. See if you can guess what it does without using a BASIC emulator...
10 X=3
20 Y=X/2
30 FOR I=2 TO Y
40 J=X/I
50 IF J=INT(J) THEN 80
60 NEXT
70 PRINT X
80 X=X+1
90 GOTO 20
Another tip: use CodeAcademy, I love it!
Great words of wisdom. Keep'm comin'. As for me. Living the small life 600 sq. ft to live the big life a block from the Atlantic on the coast of Maine.
peace
v
I'm trying to learn enough programming to get past your spam thingy
If you are reading this. It worked
:)
Sorry about that. The spam blocking is done by Akismet, and normally does a great job, but sometimes blocks too much. — Derek
I'll mod Derek's advice:
“You need to learn to program. Because if you don’t, you’re always going to be at the mercy of some asshole programmer.”
It will do wonders for your confidence. When a programmer gives you a line, well, you'll just know.
Perl opened a new world to me. I haven't looked back since then except to avoid past disasters. Those books Derek suggested, get ebooks. The manuals have a short shelf life.
Structure, presentation and behaviour? It almost sounds like the rest of the world!!! Very nice of you to post this. I Should have approached it years ago, but better now than 5 years from now....
I truly appreciate the wisdom you share. Thank you! I think I will go pick up that clarinet I requested a couple of years ago and put a little more time into exploring its possibilities. =)
I did this backwards. I've been coding since I was 16 (1996) and I just started learning guitar a couple of years ago. I actually tried at one point to go from being a developer to just managing developers. I quickly learned where the real power was. I went back to being a developer and focused on being a better developer.
I noticed at least one comment below that mentions not having enough time. There is ALWAYS time to learn. I am always improving as a developer. It never stops. And I have actually managed to learn to play guitar starting at 30 years old, while successfully making a good living with my own business, fathering two children, and remaining happily married. It's not that hard. Learning is just a mindset.
Everyone should learn to program, even if it has nothing to do with their
job or interests. You may still be at the mercy of a programmer to a
degree but at least you have an understanding of what it takes to make
small changes and big sites.
It's like learning to work on your car; you have more of an appreciation
for those who love doing that kind of work and you are willing to pay for
someone to swap out that little part that would take you 3 hours to do.
Learning to program will motivate you to make many small changes that you
really want but would never pay someone to do.
Thanks Derek for encouraging more people to learn programming. I think the
world would be a much better place if more people set their mind to
creating things.
What is the easiest, shortest way on how to begin, Derek?
Anna
Hi Derek,
I believe you speak the truth and I have similar ideas about life and the choices we can make every moment. The point that I would like to emphasize is how you started to apply the concept to every challenge, which opened all the doors, and once you can see all the doors are open, the choice on which door to jump in to should be up to each of us. I also believe in always trying to make good choices if possible, I can usually find out if a choice is going to be good or bad by asking myself the question and then giving an honest answer. In my opinion you have made some cool choices so far, I think you have inspired many people.
I agree 100%. We had our website built by someone else and, at this stage, I would love to know how to make small changes and not be a "hostage" to someone else's expertise.
Thanks Tom as always u are right on the money , thanks this is verry good advice more blessings .
Tony .Culture
Man, what a great post. I'm going to do it! Thanks for the kick in the butt!
Thanks a million, very inspirational and encouraging. Exactly my experience and I saw myself in everything you wrote. Today I am learning the basics on java.
Thank you again.
Thanks to you Derek, I'm up at midnight learning .html. Enjoying Head First on Kindle.... playing with code in TextWrangler. HTML makes sense. I like it. I appreciated seeing that you refer to yourself as a "Learning Addict." I can relate. There are not enough hours in the day. Thanks for the suggestion. Hal
Sounds like some pretty good advice, Derek. In the past, I'd never had much of an interest in programming but it might be fun to learn. Maybe this Summer. Since I live in Arizona, I intend to spend the entire 4-5 months in doors anyway. One can never have enough skills I suppose, especially with the economy being what it is. Peace.
Thank you for your writing about "learn programming"
I'm from Seoul, Korea. Currently I work at Wind power turbine manufacturing company and this is my first career.
I decided to move to IT mobile app service industry but with my marketing background I didn't know what to do.
But for sure now I can see some directions I can move on.
I started to learn computer programming and statistics via "Udacity"
“I have this idea for an app or site. But I’m not technical, so I need to find someone who can make it for me.”
I had this mindset last year. One day though, I downloaded Xcode and thought myself the basics of iOS programming. It was fun, but then I realized coding wasn't probably for me. I know the basics, and my first mobile app is on its way!
Great advice Derek!
I personally use codecademy.com but the aim is definitely the same.
First: great post! Second, my question: I have some basic knowledge of html, like building tables and things like that, and I took all the tutorials on w3schools.com/css/, so I can read some css, if it's not too complicate, without big problems... with which book should I start with, on your opinion? The html and css, or already the html5? Thank you in advance for the answer!
Hi Derek. I liked this post. And I am last person to tell people not to follow your advice. However, after my long years, I get to offer advice to my friends kids. Twentysomethings. And I tell them that their parents deceived them.
I tell them that their parents told them they could be anything they wanted. And that's the God's truth.
But they didn't tell them that they can't do everything they want. It's a big world, and you have to choose.
So I wonder if programming is for all of us.
Like learning to drive, I think it's worth 20-50 hours of your time to learn. I think it's become a basic necessary skill. — Derek
Hi Derek,
Yes i'm one of those people who's not techie enough. But you know what! I'm going to look into learning to program.
I t could save me a fair bit of money too.
Thanks for the kick.
Dear Derek,
Your point could not have been more true. Most people are afraid of putting their minds to web design including me. But after reading I think its time to take up the challenge and learn. Hip Hop Music Blue print was not created over nigh, but at lease I tried to perfect it from 1970 to 1985 . That was 15 years in learning how to do it right. The rest is history. I think the time is now or never. Thanks.
Vincent.
I am an experienced programmer, and I couldn't agree more. I have gotten programming jobs on the strength of my working through a single book.
One thing I lament these days is that there aren't more clear staying points for programming. When I was a kid, BASIC mode on an Apple II was just a control-reset away. And Logo was an incredibly easy language for any teacher to pick up well enough to teach. What is filling that role today? Processing?
A cool project I have seen for teaching kids programming (I have no connection to it) is crunchzilla.com/code-monster .
Very interesting article! I am an IT pro and enthusiast, DIY has always been a good practice... I've been running my band this way and saved some money, thanks for sharing!
Great post, Derek. I think a basic understanding of programming is crucial for business people, just like a basic understanding of finance is important for a marketing person. People of differing specialties will communicate better if they have a shared vocabulary that comes from basic skills.
Great advice! Claude Needham said it best in his example, and I emphatically agree, if its important enough to do then its important enough to learn the basics of how to do it. Thanks for the reminder Derek.
If you understand the German language, there is an excellent and comprehensive HTML help and learning site here:
http://de.selfhtml.org/
Working examples to each end every tag, browser compatibility and loads of other stuff. Maybe one could use it in English with Google Translate.
Totally agree with the article! Too many people have let me down and spoiled my (our) chances for a profitable, honest business. Happily, I don't have to rely on them anymore!
Great article Derek, and I couldn't agree more.
In my perspective learning to code by yourself benefit you in 3 major points in your startup:
1. Know how stuff works
2. Be better when Pitching and on Meetings
3. Easier to handle customer support
I wrote a piece about it - would love to hear your thoughts:
http://liordegani.me/2013/01/14/why-you-should-learn-to-code-even-as-a-non-technical-founder/
Great insight here Derek! I've made a career out of being a DIYer. I started out as an illustrator and bass player and then moved into graphic design then web design & now I have my own web design business and write, play on and produce music for people all over the world:) Power to the DIYers!
Excellent article! I consider myself a life-long learner and am always curious about all types of things. So, I am always teaching myself how to do things and/or seeking out folks to teach me. Communication between boss and worker is always better when the boss has done what the worker is doing. Your article sums everything up nicely. Thanks again for sharing your wisdom. :)
Peace,
TR
You are absolutely right. Programming skills allows you begin work at any time and implement the most bizarre ideas without wasting time to explain it. If successful, you can find an expert who will bring the idea to perfection.
Link to an inspiring Ted Talk on why everyone should learn to code, regardless of whether you want to become a professional programmer or not.
Like you "learn to read" and then "read to learn", if you "learn to code" you'll be able to "code to learn" (many other useful skills).
http://www.ted.com/talks/mitch_resnick_let_s_teach_kids_to_code.html
Yes i agree . and i am actually learning the basic programming so that i can tweek with my blogs . and believe me its not as difficult as i thought in the beginning and make things a lot easier
Thank you
this web page was made many years ago. Update is expense need to learn to do myself . Your thought process is usually how I go about my art projects but the computer I am lost of confidence and overwhelm. DeeplyThank you.
Want to make another web page for my art work. The encouragement to learn is contagious.Ann
Hello Derek! I see you're an autodidact. I love that, I'm trying to be one myself, and I've no qualms learning programming languages or any other thing of necessity. There is a problem, however - how to RETAIN things? The fact that you forget things as you go along and have to re-trace them all the way from the few concepts you (thankfully!) still remember, its so damn frustrating and time-consuming! Makes me think at times that the entire endeavor to learn new things is futile.
No no no! That's why you need to see sive.rs/srs about spaced repetition software. It really does help you retain everything you learn. It's amazing. Gotta try it for a few months as you learn new things. — Derek
Hi Derek!
Remembered your post here when I discovered this video here on YouTube - I think you might like it:
http://www.youtube.com/watch?v=nKIu9yen5nc
Regards from Germany
René
Awesome! Just bought the book last week. I build sites all day for my own projects but just use DIY Themes and Wordpress. Knowing HTML and CSS is going to be a great addition. Now I gotta learn sales and marketing too. Funny, since I took marketing in school.... sigh
This blog will definitely help anyone who wants to learn JavaScript - http://javascriptissexy.com/how-to-learn-javascript-properly/
I'm on Week 4 of the course :)
Oh speaking as a one-woman shop, I love this one.
I know programming. I know CSS, I know how to make a bang-up website.
I know computers. I'm unafraid of software installation or learning said software on the fly.
I know Illustrator and Photoshop better than anyone else you can pay to use them.
I know how to make a media list, write PRs, and generally write and do comms.
I play a piano, the ultimate "one-woman band" instrument.
I write music.
I notate music.
I LOVE DOING ALL OF IT, especially as I'm cheap as hell and don't feel like paying anyone to do anything, nor do I want to take the back-and-forth time to explain to someone how I want something done.
Thanks Derek. Im getting addicted to Joomla and foreseeing future out of it. I read your post just in time with what im doing. It's like a revelation telling me to learn html/css. Otherwise, I have to keep calling my friend to fix bug, change this and that, fix my template etc. I said to myself- 'this cant go on forever'.
I love the thoughts behind what you are doing. I always tried to teach my children and myself that one needs to take the opportunity to learn "everything" regardless of how we plan to use our new knowledge. From my experience everything we learn adds to our lives often in unexpected ways. Pursuing new knowledge is a big key one's remaining interested and interesting in life. You are both and share your thoughts generously. Thank you!
Incredible! I've found this to be 100% true. After learning how to program, I actually feel like I was contributing to all aspects of the business as my entrepreneurial self needed to do (Chief Everything Officer right?). Totally an amazing feeling getting your first site working.
I decided I wanted to teach non-technical founders how to code with my class on udemy "Coding for Entrepreneurs".
Thanks for the article it's fantastic!
Right on! :)
It is a must!
Great post.
Derek: you wrote, "Save some information in a database, and use it to generate a web page."
Do the books you recommend here discuss these topics?
Even basic functionality like creating user accounts, storing usernames and passwords requires interacting with a database on the back end.
And if we're learning how to do everything ourselves (at least learning the basics of everything...) there must be a lot to learn about basic interaction between a website and a database.
Sure, I could just install wordpress and hope that some 3rd party plugins provide the functionality, but that's not really learning from the ground up.
All the best!
-- Charles
Yes, these books cover that a bit. Using WordPress helps, too. It can be handy to solve the problem first, then poke around to understand how it was solved, after. ☺ — Derek
Sound advice that I am taking to heart. Besides it's great to learn something useful that we can then teach or pass on to someone else. Thank you Derek
Answered just the question I needed answered. Of course I need to learn this!!
And when you said "It’s definitely been the most rewarding thing I’ve ever learned," hmmm, why yes, quite literally, I imagine. Without it, CD Baby might never have happened. Anyway, THANKS! Have already downloaded the first book to Kindle.
Brilliant! Directive. To the point. Cut through all the crap .. Just do it! Saved me meandering my guessing way through a 1000 word article. Know what I'm going to be doing tomorrow!
I certainly felt this way back in the nineties when HTML was a very limited set of commands and scripts were so basic that you could more or less bluff your way through them. However with the ever more complex minefields of CSS, Java snd Javascript I have to confess that I became overwhelmed and consequently delegated my website to someone else to design... big mistake as now it's so esoteric I can't even update it. If you have enough time to spare, I'd recommend you follow Derek's advice but an old, simple HTML4 page will work just as well as a state of the art one and they are far easier to create if your interest in doing it isn't commercial
HTML5 is actually simpler than HTML4. They did a simplification and cut out a lot of stuff that used to be necessary, but now is not. See http://diveintohtml5.info/ for examples of its simplification. And I agree you don't need to use most of the new features. But it's worth an hour to know about them to know what's possible. — Derek
Well,
It might be handy I agree and do know small bits. But I really do not care anymore. For me the internet is dead. Why? So much information and mis infomation you are busy all day going through posts of everyone. I'd much rather be outside working in my garden or riding my bicycle. But then again that is lazy old me haha I am in a position I am not allowed to work anymore they just pay me not to work. So I spend my days reading and completely wasting my time on playing computer games and watching television. Why? Because I am no longer challenged
Absolutely! I was a knowledge manager for a major financial corporation 15 years ago. Prepared a huge proposal for purchasing a document management system for the operations team. Refused! So I bought a book on PHP and MySQL, read it over Christmas vacation and came back with a program I wrote. It became the standard for the company's help desk! Simple. Elegant, And I wrote it! Bravo, Derek!
☺ — Derek
Agreed!
I learned HTML and CSS from the Head First book years ago and am working on PHP/MySQL now.
I find programming to be a whole different kind of creative expression and highly recommend it...don't be scared!
(And just in case you don't want to learn, I'd be happy to give you a quote for your project!)
Are the book recommendations still valid? I used to do HTML, but have not in years. I just saw the publication date of these books were in 2012!
Yes. Very valid. I re-read these books yesterday before posting this, and they are still the best way to begin. — Derek
Thanks Derek : ) Great timing, as always : )
what do you think about the courses offered on Udemy? there are some great courses it seems there for pretty inexpensive
I'm loving FreeCodeCamp and can vouch for both it's quality and community. They've been pushing major updates this year and it seems to be the best place to start if you're starting right now (2016).
Hi Derek, Udacity and Coursera have some AMAZING, 100% free college courses online and with a fantastic interface. I learned to program from those two websites starting in 2012. As a matter of fact, I am coding right now!
Derek, I went to GitHub to sign up and start the courses, but I'm not able to sign up.
Where it says to create account, it starts to fill in the spaces "ilovejavascript" and then goes automatically from page to page.
What about Apps? If I have an app idea, should i still follow this advice? or there are some new skill to start with?
Yep! After learning JavaScript, look into React">facebook.github.io/react-native/">React Native for making apps. — Derek
Ahoy Derek--just found you through Tim F. I'm a mid 40's borderline ENFP. I've been encouraging my 12 year old to learn the skill--no luck even though I am certain he would be fabulous at it. I am now inspired enough to learn the basics myself...ya know, do as I do not as I say psychology. Looking forward to catching up on what I've been missing without DS in my life.
Great post, Derek. I'm trying to learn iOS app development from scratch, no previous coding experience whatsoever! It's not easy, this is what I know for sure. I'm learning it in my own, while having a full time job in other area. I'm using books, udemy and other online resources.
Since I don't know much about other languages but Swift, a friend of mine said he would like to learn web development and he relies on my advice what he should go after (he wants to gain knowledge amd turn that knowledge into a career). What language from career perspective do you think it's most lucrative (he has no coding experience too) and do you suggest books/online courses and learning on your own pace or going to a school/university/boot camp?
Thanks,
Dani
JavaScript is a very lucrative language to master right now. But everyone learns in different ways. I prefer books. Most people seem to prefer courses. — Derek
If I='geek' then that='fine';
If self<>true then that='crime';
Select best from self where time=always;
select hope from world where vision='lost';
delete from progress where life='cost';
commit;
#SuperDBA
http://rvrb.fm/21bCkL7
What is a good way to go about automating customer on boarding using programming? I've tried Zapier but I need an even more tailored approach.
My idea is the customer or a CSR fills out a form on my website and it creates personalized agreements, estimates, sends specific emails to the customer with their name, address, etc pre-filled. Even an integration with Trello to create a task for an employee.
I've started the process but wonder if there are any ways to speed up the process that you know of.
Great post, Derek!
Sorry I don't know. — Derek
Thanks for the advice Derek.
Just bough the book- Head First HTML and CSS.Will start reading, learning and implementing as soon as I get the book.
What are your thoughts about Mastering Wordpress ?
What about Python?
Rakesh
They're all useful to learn if you have the time. — Derek
Perhaps the universe is conspiring.
Just last week I was working in excel and wanted to created a macro that could run on a spreadsheet that had 120,000 rows and about 50 columns. The copying and pasting was a nightmare.
Although I had learned some Visual Basic in University, I never really learned macros because there was not much need for it.
Javascript I did learn and actually really enjoyed creating things as projects.
Now 8 years later, it surfaces through your email, and so perhaps this is a skill I should pick up again. My 35th year looks to be setting itself up for a year of learning new skills.
Thank you.
One of my son just graduated from Univ of GA. He did BBA in marketing.
Another son is in 11th grade.
What would be the first step for them to get going in coding path?
Rakesh
Just as described here. HTML + CSS + JavaScript to start. Then master JavaScript deeper to do more than web pages. — Derek
also: learn to change your oil. learn to wire an electrical outlet. learn to install a new faucet. learn how to hang a door. learn how to read a contract and how to negotiate.
these are things you hire others to do 90% (or maybe 100%) of the time, but if you have a basic understanding and the "mystery is lifted," your ability to find a good practitioner -- and not get screwed by a swindler -- is almost absolute.
☺ exactly! — Derek
“I have this idea for a song. But I’m not musical, so I need to find someone who will write, perform, and record it for me.”
I've had that happen a number of times but I usually tell them up front if I do all the work, the song is all mine, you can't copyright an idea or a title.
Namaste, Derek
Yes, you are right
I had to transpose my Sitar compositions in western software. I was scared but musician friend named Carol Worthey gave me a strong dose of advise,
I forced myself and learned Sibelius software and completed 100 Sitar compositions.
I am still learning
Hasu Patel
Started learning on FreeCode Camp and also started reading the Head First book on HTML and CSS
Thanks a lot
What are your thoughts about Wordpress?
Thanks for the articles. Always look forward to reading them.
Matt
WordPress is great. I recommend it often. — Derek
Several people vied to design my first website (w/o charge), so they could proudly display this internationally known musical artist's site as one they'd designed. The person I OK'd, later told me she'd designed it with "Front Page" which was apparently not manipulatable by Apple/Mac (which was the computer I had). A subsequent webmaster bought a Mac so that he could see the site as I saw it, while he continued to manipulate with Windows. Still, I can not do corrections or updates on it myself, and I'd like to. I was to purchase a web-design program from GoDaddy.com but am told I'd have to start from scratch (it would not allow me to update or copy & paste what I already have). Can you suggest a solution that would allow me to update what currently exists at www.Fleetwoods.com? (Or is Learning Programming the only solution? I already "Stay up an hour later. Wake up an hour earlier," averaging about 4 hours sleep per night. The hurrier I go, the behinder I get!" :o)
I started Free code camp today and realised coding is what I used to do with my AIM away messages in middle school in an attempt to be cool. My efforts were also utilised on Myspace, when that was cool. Free Code Camp actually seems fun and I'm excited to integrate it in to my routine!
☺ Great to hear. Thanks for telling me. — Derek
I guess my issue with this is time.
When I stare at all the things on my to do list I need to pass as much as it to other people as I can. Now, what's left? Pick one thing as get it done. I never have time for anything so it a get the chance to learn coding or Korean (my wife is Korean) then I choose Korean.
Thoughts?
Lee
Thank you for your post. I am learning HTML, CSS and JavaScript now. Understanding JS is not easy for me, but I think I will stick with it. Your post has reinforced my thought to learn. Just wish I had started learning programming years ago.
I have toyed with this idea for a while, and often ask people. Ironically I ended up running a mobile development company that employed 40+ developers...oh how I wish I knew coding at that point! Question for you here is:
1) is there a age where it becomes too late to learn coding, where its use is not longer practical. I get the adage answer of "it is never too late", but realisitcally, is it too late. What is the point in dedicating yourseld to months of learning code, if you are never going to use it? There must be some inverse relationship between age and learning code?
2) I asked someone recently about coding who hated it. They compared it to learning about accounting, knowing that I did not like accounting. It seems coding is like marmite (love it or hate it). Is this right? If so, how do you know? Try it yes, but for how long? Sometimes the more you try, the more you like.
Another thing here, which is a personal comment, is the judgement of others. I have never done coding before, have career capital in other areas I could focus, and everyone would think i have totally lost the plot if i start learning it. "Why are you doing that" "thats weird" would be the comments I can imagine. I am working on this point, and most think i've lost the plot anyway, so getting easier ☺.
As always, Thanks Derek!
Been thinking about this for a while. Looking into code acedemy. Thanks for the "push". Hope all is well with you.
Cheers!
Annmarie Cullen
Difficult stuff gets easier with two things: Structure and practice.
Roughly speaking in my head its like this:
HTML has to do with the information of a page
CSS governs the look of the information on page, how its presented
Javascript: handles the mechanics of the page, what to do with the data created by the page or user and the interface you present.
Or did i get it wrong?
Other programming things to look into is the languages: C(++)(#), Python and Perl.
Practice Practice Practice - read other peoples code/websites.
When i started i winced back thinking "oh my that looks way too complicated.. i will never grasp that".
Then the stubborn part of me kicked in. Using the above structure helped a lot understanding what goes on.
Least but not last.. have fun with it!
Cool stuff thanks again for how you give back with all you write and teach
Derek, I want to say Thank you BIG TIME for this post.
In 2014, I spent $12K on Dev Bootcamp (and another $3K for rent in SF) and ended up quitting the program a week before it ended. The training was SO bad that, by phase 3, I was lost, confused, frustrated and so stressed that I couldn't think. I basically spent $12K for an accelerated SELF-STUDY program. There was no way I could land a dev job with what they taught me. I gambled on their program to help me make a career change and lost.
In 2015, my whole life went to hell. I had massive debt, no savings, no job, and then my elderly father hurt himself and I had to take care of him and my elderly mom, and put my life on hold.
Things began to settle down at the beginning of this year. My parents moved into an assisted living community and are doing better. I took on two very part time jobs, which keep the bills paid. I also started back to studying web development, but progress was a little slow.
A few weeks ago, I was reading through some of your articles (because I was listing your site on my 'favorite websites' page of a personal website I am creating). After reading this article, I clicked on the link for Free Code Camp. I ended up starting their course and am accelerating rapidly. I have a goal of finding a dev job by this summer and that goal looks attainable, now!
Thank you for posting this! Many of your articles have given me a lot of great insights. This one serendipitously has helped change my life.
Cheers!
☺ !!!!! — Derek
Yes, Yes freecodecamp, hallelujah. You make a blind men see. Never now how beautiful life is. You have the gift of inspiration, helping to create a new world. Like a bird who sings the most beautiful song. Thanks for the music!
I am 10 Hours in to Freecodecamp....#fu##ng GENIUS.
Thank you for the recommendation. Having a blast and learning...actually doing what they say and learning.
Now I read this page and YESSSS you are ABSOLUTELY correct. I am learning to code because I have ideas I can't afford to pay others and it leaves me feeling helpless. Most people watch tv and drink and party I LOVE to learn.
Looking forward to reading more of your stuff and going from there.
180 pages in 180 days WTF.... Have to see that. WOW
Khan Academy has a decent module for learning to code.Gives me confidence as its very basic start.
If I am really interested in VR would it be cool to start with C#? Should I still start out with HTML ?
For comment # 126, whose wife learned to sing merely from having musicians around, I can believe that. I knew a housewife who picked up French simply from having her small children taking French at school.
I say this partly to respond to #35, that Derek should have us commenters able to talk to each other. As I show above we can, but most people don't. I do, sometimes.
And sometimes I start my comment with "hello Derek and everyone" but usually I don't because I think the "everyone" is just assumed. Maybe I'm wrong, and for others it's not assumed.
For comment #304, is Wordpress good? I would say yes, although I myself use the other competitor, google's blogspot, because (from the net, from what I have seen, and what I have read in the newspaper) I think google has dropped their old "don't be evil" thing. It's too bad.
Hi Derek,
Is "Basic HTML, CSS, and JavaScript are enough to start." still your recommended beginning curriculum? Thanks in advance! Best Regards, Wade
Yep! — Derek
This has literally triggered me to start learning Linux. The self-reliance is liberating (mainly because of speed).
Its quicker to execute a small change than it is to find a new freelancer!
Thanks for sharing this with me, Derek. The funny thing about telling people that you are learning how to program is all of those "ideas" from the dream space that start making their way into your conversations with friends and acquaintances. I tell them the same thing that you advised, "have you thought of learning how to program?".
Very interesting, Derek. Will check these links out!
Do you still think its worthwhile to learn HTML? I don't know a lot about computing but would love to learn. I read the first chapter of the book you recommmended and really like how it's written.
Thanks
Yes! Absolutely necessary. And only takes a day. — Derek
This is a GREAT resource!!!
4 days into my journey and loving it! Empowering to know I can create my own things.
I feel like this is even more pertinent today. "You should learn programming because if you don't, you'll be at the mercy of some asshole AI." Yes. AI can program for you and is very accessible to everyone. But if you don't understand the basics, you'll have no way to steer out of danger if things go wrong. You won't be able to "trust, but verify," only hope.
Hi Derek,
I hope you are doing well. I am planning to go through CS50's Introduction to Programming with Python - course.
Do you think programming still make sense?
I would like to become and Technical artist using blender and unreal engine with python... I love when you said every ten years you can learn something new... i am 38.
Thanks and love your work.
Slobodan
Yes! Definitely. — Derek