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…
Default Java Installation
- Run a ‘sudo apt-get update’.
- To install the default Java JRE and the JDK run the following commands.
sudo apt-get install default-jre
sudo apt-get install default-jdk
Oracle Java v8 Installation
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
- I download the application zip from JetBrains and then run
tar xfz WebStorm-*.tar.gz
- 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.
mv /downloads/WebStorm-* your/desired/spot
- Now at your terminal, navigate to the path where the application is stored and run the WebStorm.sh executable.
- To add WebStorm to the Quicklaunch, just right click on the icon and select to Lock to Launcher.
IDEA IntelliJ Installation
- Follow all the steps listed under WebStorm, it’s the exact same process.
- Go to download the latest v3.
- Run the package and it should launch the actual Ubuntu installer, setup Sublime for bash use and get it installed.
I’m so mad!!!
No, actually I’m not. This is cool.
It’s so confusing! No, it’s actually not. Use your learnings and read this Node Forward and read Max’s @maxogden “What you need to know.” gist.
It’ll be so hard to test this and test with node.js. Not really, again, read the threads there are a million different ways that you’ll be able to setup a clean build against either while keeping both around on your dev machine. Again, repeating myself, this is cool.
Summary for Devs: This is cool. It’s not going to wreck your projects. Just read up on it and it’ll all be a most excellent journey.
Summary for Decision Makers: Read @eranhammer‘s blog post here. TLDR; is, don’t second guess your decision to go with Node.js, don’t flip out about a Node.js or io.js investment, this isn’t anything more than a healthy ecosystem at work. It’ll be cool.
First, get it installed. This takes less than a minute, at least on a *nix based machine. I’ve no idea what it takes on Windows, but hey, at least it’s available there too! I did a clean curl and install as shown. It took about 14 seconds solely because I wasn’t typing very fast today.
12:28 $ curl -L -O https://raw.github.com/nvie/gitflow/develop/contrib/gitflow-installer.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 2145 100 2145 0 0 1732 0 0:00:01 0:00:01 --:--:-- 1732
12:28 $ sudo bash gitflow-installer.sh
### gitflow no-make installer ###
Installing git-flow to /usr/local/bin
Cloning repo from GitHub to gitflow
Cloning into 'gitflow'...
remote: Counting objects: 1407, done.
remote: Total 1407 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (1407/1407), 623.29 KiB | 428.00 KiB/s, done.
Resolving deltas: 100% (689/689), done.
Checking connectivity... done.
Submodule 'shFlags' (git://github.com/nvie/shFlags.git) registered for path 'shFlags'
Cloning into 'shFlags'...
remote: Counting objects: 454, done.
remote: Total 454 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (454/454), 130.91 KiB | 0 bytes/s, done.
Resolving deltas: 100% (337/337), done.
Checking connectivity... done.
Submodule path 'shFlags': checked out '2fb06af13de884e9680f14a00c82e52a67c867f1'
install: gitflow/git-flow -> /usr/local/bin/git-flow
install: gitflow/git-flow-init -> /usr/local/bin/git-flow-init
install: gitflow/git-flow-feature -> /usr/local/bin/git-flow-feature
install: gitflow/git-flow-hotfix -> /usr/local/bin/git-flow-hotfix
install: gitflow/git-flow-release -> /usr/local/bin/git-flow-release
install: gitflow/git-flow-support -> /usr/local/bin/git-flow-support
install: gitflow/git-flow-version -> /usr/local/bin/git-flow-version
install: gitflow/gitflow-common -> /usr/local/bin/gitflow-common
install: gitflow/gitflow-shFlags -> /usr/local/bin/gitflow-shFlags
For installation instructions check out the link here: https://github.com/nvie/gitflow/wiki/Installation
Now that everything is setup. Here’s the quick getting started of creating a repo, linking it up to a remote and working in a repository. The first step is to initialize a new repo. Continue reading
First I created a project for the node.js worker. The first steps for this are identical to that of creating the Hapi.js site that publishes messages to the queue. Go through these three steps for the worker and then I’ll continue from there.
- First create the web application which will act as our worker service. I gave mine the name of testing-aws-sqs-worker, the site publishing to the queue I called testing-aws-sqs-site.
- Next add dependencies needed, like mocha.
- Finally make sure the AWS environment variables are set appropriately.
…and now on to the security, configuration and worker specific parts of this series…
First I created a project for the node.js web application.
$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sane defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install &pkg& --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
version: (0.0.0) 0.0.1
description: This project that will feed data to the queue for the AWS SQS sample.
entry point: (index.js) server.js
test command: mocha
git repository: (https://github.com/Adron/testing-aws-sqs-site.git)
keywords: aws, sqs, elastic, elastic beanstalk, queue, worker
author: Adron Hall
license: (ISC) Apache 2.0
I know I know, the marketers say it’s all about the single articles now. Nobody reads blogs. Nobody subscribes to blogs. Ya know, except of course for that small percentage of people that do.
…marketing, it’ll make you insane if you’re not careful.
But seriously, here’s a few blogs that are actually worth reading. They’re worth subscribing to and surprisingly, they’re blogs that businesses organize and write. Yes, I have and might be writing for some of them in the future. But I’m honestly basing this list on a few specific criteria:
- The blog has to include some technical content that is important to getting kick started with their product and getting kick started with other tooling around their space.
- The blog has to include articles that have industry information that is relevant to conferences, meetups, and other community related activities.
Here’s my list of reads lately: