Sean Markey helps musicians with marketing and PR at Visible Musician.
In an increasingly DIY environment, musicians are expected to wear many different hats. You do your own PR with Twitter and ReverbNation, you do your own concert promoting with Facebook, and you were the recording engineer, backing band, and producer on all the songs you just recorded on your Macbook Pro.
Also, what ELSE are you gonna do to fill up all those long hours on the tour bus?
I've compiled a list of some popular programming language (though it is by no means comprehensive), where you can learn them, and how difficult each will be to learn.
PHP stands for PHP: Hypertext Preprocessor, and is a script that helps create more dynamic webpages. PHP is like a behind-the-scenes magician making amazing things happen on the web page.
- Want your twitter account to show up on your web page? PHP.
- Want a like button on your site so fans can show their support on the biggest social network on the planet? PHP.
- Want a custom MP3 player that integrates perfectly into your website and plays your most-loved tunes? PHP.
With PHP, you can create custom shopping carts and online stores to sell your band merch. Since the widgets and plugins on Wordpress are coded with PHP, you can construct your own plugin for your band site if you get really good.
Think of PHP as a way to give the website you built and customized with HTML super powers!
Want to learn PHP? Check out Zend.com and start here on the tutorial.
If you Google "what is the easiest programming language to learn," Python is the hands-down winner. Also, it has the coolest name. Different from most other high-level programming languages, Python uses English words in place of punctuation where applicable.
Python has a list of music-related software written in Python (such as audio players, audio converters, and creating sound). Realistically, Python doesn't have a lot of immediate, obvious uses for musicians in bands to use, but its accessibility and how well it gets along with most other code, on most platforms, makes it a good starting point in the quest to learn programming languages.
You can check out Google's Python Class as a starting point.
RUBY/RUBY ON RAILS
Ruby on Rails is a relative newcomer to programming languages. Based on the Ruby language, Ruby on Rails is, like PHP, a scripting language used to build web applications. Some of your favorite sites were built using Ruby on Rails, such as:
- Twitter (esp. in the early days)
- Penny Arcade comics
- Funny or Die
So what can a musician do with Ruby & Ruby on Rails? Well, you'd probably have the best web site on the block, and would be able to do things on your site that other bands could only dream of! On the other hand, you will probably be replaced by your band when you spend too much time on the computer learning how to program in Ruby on Rails.
Want to get started with Ruby on Rails? Check out the awesome Rails for Zombies, which takes the boring task of learning Rails, and combines it with something awesome, like zombies.
Java is a vast and powerful programming language. Used on mobile phones and computers alike, Java is compatible with nearly everything. One big advantage of learning Java is most Android apps are built using a customized version of Java. You do want your bands app on what is currently the most widely used mobile platform, right?
Here is a website that completely walks you through building an Android app using Java.
This is one for the Apple fan boys/girls. Cocoa is an extension of the programming language C, and is used to build many Mac desktop applications. But that's not the best thing about the Cocoa programming language. Cocoa is used to build iPhone applications. Picture it: your band's app available on the App Store. The possibilities are endless: an app that streams your band's music, a game where fans can bid on rare/exclusive merchandise, videos of the band not available anywhere else, an Angry-Birds-esque game of launching band members at... well, anything!
Cocoa Dev Central has tons of tutorials on learning to program with Cocoa.
If you're unsure about what you might want to learn, or are open to exploring many of the different types of languages to learn, check out Codeacademy, which is a fun and interactive way to learn about programming basics. I highly recommend it.