I’ve recently setup a completely clean virtual machine for doing web, system, and related development on Ubuntu. Here’s the shortlist of what I’ve installed after a default installation. The ongoing list of tools and related items I have installed on my Linux dev box I’m keeping here, and it will be kept as a living doc, so I’ll change it as I add new tools, apps and related changes. So lemme know what I ought to add to that list and I’ll add it to my docs page here. Here’s what I have so far…
Always run sudo apt-get update once the system is installed. It never hurts to have the latest updates.
I always install Chrome as my first app. Sometimes the Ubuntu Software Center flakes out on this, but just try again and it’ll work. I use the 64-bit Chrome btw, as I’ve noticed that the 32-bit often flakes out when attempting installation on my virtual machines. Your mileage may vary.
What this enables…
At this point I can launch into about any language; Java, JavaScript, and a few others with a minimal amount of headache. Since it’s a Linux instance it gives me a full range of Linuxy things at my disposal.
Default Java Installation
Run a ‘sudo apt-get update’.
To install the default Java JRE and the JDK run the following commands.
Next I always move the unzipped content to the directory in which I’d like to have the application stored. It’s good practice to not keep things in the download directory, just sayin’. Generally I put these in my usr/bin directory.
Today the JetBrains team wrapping up final processing for my webinar from last week. You can check out the webinar via their JetBrains Youtube Channel:
For even more information be sure to check out the questions and answers on the JetBrain WebStorm IDE blog entry. Some of the questions include:
Q: How to enable Node.js support in PhpStorm (PyCharm, IntelliJ IDEA, RubyMine)?
Q:How to enable autocompletion for Express, Mocha and other libraries?
Q: Is it possible to debug a Node.js application that runs remotely? Is it possible to debug when your node and the rest of the dependencies (database, etc.) are running in a VM environment like Vagrant?
This coming week I’m doing an intro to work and flow with Node.js JavaScript Programming that I’m working with JetBrains on. In the webinar I’ll be covering the following key topics in the webinar:
Open an existing project & getting WebStorm configured for running, testing and related working tasks.
A quick tour of other IDE features that help with daily work. Some in pretty huge ways.
These WebStorm Tutorials have been put together by John Lindquist @johnlindquist for JetBrains. There solid, quick snippets of useful WebStorm usage. Two that I’ve found really useful I’ve included here:
Coming Up in the Near Future, The Work & Flow of JavaScript Development
I have a new course I’m working on right now for Pluralsight, that will take these basic precepts and dive even deeper into the daily workflow of the JavaScript Developer. Whether it’s client side hacking or server side coding, I’ll be diving into a whole lot of JavaScript goodness. If you’d like me to ping you when the course is done, hit me up on Twitter @adron and just let me know. In the meantime get a Pluralsight subscription (free to sign up and at least give it a try) and check out these courses by myself and others.
I arrived around 8:20am “ish”. @juliaferraioli & cohort were registering people. The @AWSstartups crew was there including @Jeffbarr, also @shanley, @Alex_donn, @JamesPearce, and others were already getting things put together. I decided to happily plunk down in a chair and get going. I had zero plan, but only a single goal. Make a web app that isn’t device proprietary, but is mobile centric, and get it live on the web.
My initial dev machine load that I intended to get this accomplished with I posted yesterday. So here’s my first push…
First a quick run thru of WebStorm and RubyMine IDEs.
{Edited this part on Apr 20th to provider more information regarding Java Installation} If you’re on Ubuntu, open up the Synaptic Package Manager and search for java6, which should bring up the sun-java6-jre. Mark it for installation and apply so that the JDK will install with the required components. If the Java 6 isn’t available in the Synaptic Package Manager open up the Settings -> Repositories, and then the Software Sources Dialog will appear. Click on the Other Software tab and select Canonical Partners. Close the dialog and Reload the packages. When a search is done now, the sun-java6-jdk should be available.
Next edit the profile at /etc/profile by entering the command:
After this is done, restart your X-Windows/Gnome Instance or simply just reboot. I don’t really like to suggest rebooting since it usually isn’t needed with Linux. 😉
[sourcecode language=”bash”]
tar -xvzf WebStorm-2.0.1.tar.gz
tar -xvzf RubyMine-3.1.1.tar.gz
[/sourcecode]
You may want to put your new applications into a specific directory. I placed mine in a folder I made within my user folder called apps. Just a little easier to keep up with things that way.
Creating a Launcher
Once these are unzipped right click on your desktop and choose “Create Launcher…”. Click on the Browser to bring up a folder navigation dialog, find the bin directory of the app your creating a launcher for. In my case it is /home/adron/apps/WebStorm-103.243/bin/ which has the WebStorm App Files needed for the Launcher. Find the WebStorm.sh file and select it.
Once the app file is selected then check ok. For a more step by step, check out Tomi’s Blog Entry. Do the same for both apps.
With both of those apps, simply launch the IDE and enter your key (or select 30 day trial) and you’re up and running.
RubyMine Startup (click for full size image)
With the awesome Jetbrains IDEs installed I was really ready to dive into something. Next I went straight for a new project in RubyMine. File -> New or just click on the Create New Project on the main RubyMine Startup Screen.
New Project Dialog
Pick your name, I’ve decided to go for some sushi with a project type of Rails application, and click enter. The next dialog that comes up asks some standard settings information options.
Rails Settings
If you click on the ellipsis button to the right of the Rails Version, a prompt will come up to select which rails version you want to use. Ruby Mine will then install that version if it isn’t installed already.
Install Rails Version
I decided to check “Generate RDoc and ri documentation” also, and then clicked on Install.
Installing Rails Version
Once the options and settings are made for the new project, click to create the project. RubyMine will work for a few seconds, maybe 20 or 30 on slower machines, and eventually the IDE will display with the newly created project. When I created it the first time I was informed I was missing some gems.
RubyMine Project (Click for larger image)
I clicked on the More… option near the Install and attach missing gems using bundler… warning to get the additional gems I needed. This brings up a dialog specific to maintaining the Ruby SDK and Gems.
Settings (Click for larger image)
I clicked on Install Gems and found the the sqllite3 and sqllite3-ruby gems to install. I clicked on install and then apply and OK (ok, old habit, not sure WHY apply gets put on these dialogs) on the settings screen. Once done getting those last bits installed click on the Development: SomeSushi (or whatever you’ve named the project) and select Edit Configurations.
Development: SomeSushi
On the Edit Configurations Dialog screen check Run Browser from the bottom of the options and click on OK. Then click on run button (the green play button on the button bar) to run the Ruby on Rails Web Application. Within a second or two you’ll see the default Ruby on Rails + RubyMine Run the site in the browser.
RubyMine Ruby on Rails Default Web App
At this point in the day I took a break, ate lunch, talked to @AWSstartups crew @rodica & @Jeffbarr. Introduced myself formally in person to @shanley and chit chatted about our respective efforts with @lazycoder and @juliaferraioli. The food was great, as in, it was actually really good. Not some random junk. Super tender chicken with spaghetti sauce and little round funny shaped pastas (I’m sure there is an appropriate name for em’). I was honestly impressed by the food brought in.
After lunch I dived back in for the next phase of development. For that though, I have another blog entry coming… (stay tuned).
You must be logged in to post a comment.