Skip to main content

Mobomo webinars-now on demand! | learn more.

Creating requirements for your web or mobile application can be tedious; managing ideas even moreso. The larger the project, the more difficult it becomes. Add in the flexibility that agile brings to projects, and things can quickly get out of hand.

But what if there was a way to make writing requirements and managing ideas not only easy, but a lot of fun too?

There is - mindmapping.

Join me on June 4th at 2 PM EST for a free webinar - Mindmapping Requirements For Agile Projects.

On this webinar we'll talk about:

  1. What mindmapping is, why it's valuable, and how to use it
  2. Using this technique to brainstorm requirements
  3. Moving the results of your mindmapping into a management system like JIRA
  4. Managing ideas that come up during your projects
  5. Free mindmapping tools you can start using today

You'll see many concrete examples of using mindmapping to go from idea in your head to having a solid list of requirements.

Whether you have an idea for a brand new application or are looking for a better way to brainstorm with your team, this webinar is for you.

Register today for this free webinar.

See you there!

Categories
Author

Travis CI is a great solution for OpenSource project. However, what if you want to setup an internal CI server for private projects? Jenkins CI is the choice.

In this post, I'll guide you through installing and configuring Jenkins CI on a VPS (EC2 instance in this post)

OS Assumption

Assume that you are running an EC2 instance with a Ubuntu system as below:

Ubuntu 12.04.2 LTS (GNU/Linux 3.2.0-40-virtual x86_64) 

If you don't yet have a VPS set up, there is an Amazon free tier that is recommended.

Install Rails Environment

Because you'll be using this Jenkins CI server for Rails projects, install the following Ruby/Rails libs and tools:

- Install RVM and Ruby

We need to have git core and curl for RVM installation, so install them like so:

sudo apt-get install build-essential git-core sudo apt-get install curl 

And install RVM with ruby as user jenkins:

#remember to switch to user `jenkins` first sudo su jenkins  curl -L https://get.rvm.io | bash -s stable --ruby sudo apt-get install libmysqlclient-dev ruby-dev 
- Install Possible Databases
MySQL
sudo apt-get install mysql-client mysql-server libmysql-ruby libmysqlclient-dev 
Postgres
sudo aptitude install libpq-dev sudo apt-get install postgresql sudo apt-get install postgresql-client 

If you had a problem with UTF-8 take a look at http://wiki.gentoo.org/wiki/PostgreSQL

MongoDB
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/10gen.list sudo apt-get update sudo apt-get install mongodb-10gen 

Now Install Jenkins

Installation:

wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add - sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list' sudo aptitude update sudo aptitude install jenkins 

Uninstalling Jenkins is easy too, just:

sudo apt-get remove jenkins 

FYI - There is also a detailed guide for installing Jenkins on Ubuntu.

Run Jenkins on Port 80

By default, Jenkins runs on port 8080, so you'll need to reverse proxy port 80 to port 8080 for Jenkins. This will make the CI server public to the world.

To install nginx and set this up, open up a terminal and type in:

sudo apt-get install nginx sudo /etc/init.d/nginx start 

Open up the config file in vim, and update it.

sudo vim /etc/nginx/nginx.conf 
http {          # ...Omitted Parts…          include /etc/nginx/conf.d/*.conf;    # This line not modified.         include /etc/nginx/sites-enabled/*;  # This line not modified.          ##         # Reverse proxy port 80 to port 8080 for Jenkins         ##         server {                 listen 80 default;                 server_name your.domain.com;                 location /{                         proxy_pass http://127.0.0.1:8080;                 }         } }  

Notice: Jenkins shows build histories and other information. Tto keep the whole CI server private, you'd better use this guide to add basic auth for your Jenkins CI. It is strongly recommended.

Install valuable plugins for Jenkins

After all of the above installations are done, you are able to visit your Jenkins CI server using your domain. Now it's time to install the following plugins from the JenkinsPlugin > Manager section:

For more plugins, check out the Jenkins Plugins Document.

References & Resources

https://wiki.jenkins-ci.org/display/JENKINS/Configuring+a+Rails+build
http://watirmelon.com/2011/08/29/running-your-watir-webdriver-tests-in-the-cloud-for-free/

Ready to build an industry-changing product?

Let's talk about your project today >>

Categories
Author

Recently, I was looking for a way to do a task N times in JavaScript (like Ruby's N.times method), which I found (_.times) in the Underscore.js library. This discovery exposed me to an alternate way to call the Underscore methods, using its chaining syntax.

If you do a lot of work with Backbone, this syntax will be familiar. In Backbone, you can call many of the Underscore methods on models and collections:

bookCollection.each( function(model) {   console.log( model.get('name') ); }); // >> 'American Gods' // >> 'Anansai Boys' // >> 'Coraline' 

But what might not be obvious is that if you want to iterate over an object with Underscore, you can do the following:

_(["American Gods", "Anansi Boys", "Coraline"]).each( function(book) {   console.log(book); }); // >> 'American Gods' // >> 'Anansai Boys' // >> 'Coraline' 

Which is the same as doing this:

_.each(["American Gods", "Anansi Boys", "Coraline"], function(book) {   console.log(book); } // >> 'American Gods' // >> 'Anansai Boys' // >> 'Coraline' 

This becomes beneficial if you're working on a Backbone project and have a non-Backbone object that you want to iterate over. Going from collection.each(function(){}) to _.each(objs, function(){}) can be jarring, while _(objs).each(function(){}) is less confusing due to its similiarity.

Ready to build an industry-changing product?

Let's talk about your project today >>

Categories
Author

You have to start somewhere. We're excited to hear what co-founder Chris Selmer learns at Google I/O, but until then let's jump right in with a basic "Hello World" example.

To deploy this example you'll need access to the Mirror API Developer Preview. If you have access, go to the Google Glass Java Quick Start page and follow the instructions for configuring your environment. If you don't have access we've included the output so you can follow along.

Timeline items, aka "cards," display information retrieved from a REST endpoint. A card is the basic unit of visual display for Glass; think of it like a simple web page. It's easy to work with timeline items because they're represented as a JSON structure.

To insert a new card, POST your JSON to the REST endpoint. You'll need to take three simple steps: create the new timeline item, set the text, and execute the command. "Hello World" in Java looks like this:

TimelineItem timelineItem = new TimelineItem(); timelineItem.setText("Hello world"); service.timeline().insert(timelineItem).execute(); 

Which creates the following raw HTTP:

POST /mirror/v1/timeline HTTP/1.1 Host: www.googleapis.com Authorization: Bearer {auth token} Content-Type: application/json Content-Length: 26  { "text": "Hello world" } 

Glass will add the card to your timeline, and your user will see "Hello World."

Google Glass Hello World display

Ready to start your Google Glass project?

Let's talk about your project today.

Categories
Author

When it comes to selling products on a local basis, mobile rules the day. Whenever I travel anywhere, the first thing I do is fire up the Yelp or Google Maps apps to find someplace to eat. Next I check out the websites of those places. If I like what I see, I've found my next meal; if not, I'm moving on to their competitors.

And I'm not the only one...

According to the latest research from The Nielsen Company, 45% of consumers use their mobile device first when searching for local products and services. Ultimately, 53% of mobile users are making their purchases offline or in-store, and a whopping 74% of smartphone users complete their transactions offline.

What does this mean for you?

That means that your customers are searching for your products and services on their smartphones and tablets, and if they like what they see, they're buying. If not, they're heading to your competition.

Mobile Is Not A Choice

Providing a superior mobile experience, be it in the form of a mobile-optimized site, or a mobile application, is no longer a choice, it's a necessity. And with mobile Internet use set to surpass desktop Internet use in 2014, this is a trend that is rolling over companies.

And when I say "mobile-optimized site", I'm not talking about merely taking your entire website and making it mobile. What you need to take into account is how your customers use the mobile Internet, what devices they're using, what they expect when using those devices, and what information they need to move to a decision. This is where user experience design comes in.

To hammer this point home, we've taken the crucial findings of the research and turned into an infographic for you:

Local Buyers Are Mobile

What Do You Think?

Is your experience the same as in the findings? When you're searching locally for products or services, does your mobile experience determine whether or not you visit a store?

Let's talk about it in the comments below.

Categories
Author

Less than five years ago, two young entrepreneurs named Ben Bixby and Greg O'Keeffe came to Intridea with an ambitious goal: launching a platform for helping homeowners track and reduce their energy consumption. It was a great idea, but we needed to work fast to have it done by their Earth Day launch target. Ben and Greg knew they were asking a lot, but their enthusiasm and desire to make a positive change in the world were contagious. It was an exciting and caffeine-fueled time.

After months of hard work and close collaboration between the Intridea and MyEnergy teams, we launched the beta version on Earth Day 2009. It was just the beginning of great things for Ben and Greg. That’s why we’re just as excited today to congratulate MyEnergy on their latest success: their acquisition by Nest Labs, home of the learning thermostat.

When I look back, I always think of that beta version of the MyEnergy platform as a perfect example of rapid prototyping and agile design and development done right. Under a time crunch, both our teams had to work closely to build out the minimum viable product while also creating a robust system that wouldn’t fail under load. I’m really proud of the work we all did.

After the successful beta launch and helping MyEnergy recruit and hire an internal engineering team, we've continued to stay close to them, offering engineering advice and the occasional extra hand when a big development push was needed. It’s been great following their growth and getting to partner with MyEnergy throughout the years.

Here’s what Ben Bixby, CEO of MyEnergy, had to say back in 2009 about working with our team:

"Intridea is a great partner for any startup looking to get off the ground quickly. The Intridea team worked closely with us to build our beta solution on a highly accelerated schedule and then helped us construct an internal development team to continue on from there."

Nest Labs, with their vision of changing the way people think about energy use, is the perfect home for MyEnergy. The simple design and usability of the Nest thermostat shows that Nest values good design and quality engineering. MyEnergy and Nest Labs: the perfect pairing.

Congratulations to both the MyEnergy and Nest teams -- we look forward to continued success!

Categories
Author

Go ahead and reach in your pocket. What's there? I'm willing to bet you've got a smartphone in your hand right now. And if I was even more of a betting man, I might wager that either you or someone at home also has a tablet of some sort.

The rise of mobile has been well documented. In fact, if the trend continues, mobile Internet use will surpass desktop Internet use in 2014. That makes it imperative for every business - your business - to have a mobile strategy. And that means providing an experience for people using smartphones and tablet devices.

But how to learn all this? Answer: MoDevUX.

MoDevUX is back with another excellent line-up of speakers, teachers, and hackathon judges for MoDevUX 2013. Starting this Thursday and lasting 3 days, attendees will hear from industry thought leaders, peers and up and coming stars.

We at Intridea are happy to sponsor MoDevUX for the second year in a row. Last year was awesome, and we're sure this year will meet the same expectations.

Here's a quick video about the conference:

Tickets are still available! Use code "GROUP5" for a 30% discount for five or more when you register today.

If you're attending come by the Intridea table and introduce yourself.

I'll see you there!

Categories
Author

We were very happy to sponsor Day of Fosterly 2013, which happened this past weekend. More than 600 attendees showed up, and you could feel the energy in the Artisphere. Congrats to Adam Zuckerman and the entire foster.ly team that made the weekend a great success.

A special shoutout to Dov and Brittany who helped get us everything we needed to make DOF2013 a success for Intridea as well.

Here's what went down...

Design, UX/UI & You

As part of a panel, our very own Jurgen Altziebler weighed in on current design trends and what should really drive design - the customer.

At the end of the day, everyone agreed that design is super important. Frankly I couldn't agree more :)

Here's a pic of Jurgen not on the panel, but giving Google Glass a try.

Jurgen sporting Google Glass

A big thanks to Stephanie Nguyen for letting us all geek out with the glass.

Workshop: How To Develop A Responsive App Quickly With DivShot And Rails

Tom and Brandon presenting

Tom Zeng and Brandon Hunter led this well-attended workshop, where they showed attendees how to quickly and efficiently prototype a 3-page responsive app built on Rails.

Check out their presentation:

If you haven't tried Divshot yet, sign up for the free beta. Build your UI using drag-and-drop, and then export to HTML and CSS.

Walt Mossberg Keynote Highlights

Walt Mossberg is the author and creator of the weekly Personal Technology column in The Wall Street Journal, a column that's appeared every week since 1991. He is also the co-creator and co-producer of the "D: All Things Digital" conference, as well as the executive editor of the All Things D website.

When Walt speaks, people listen, and listen they did - to his keynote. Here are the main lessons Walt gave us, paraphrased by me. Additional comments in italics.

  1. Customer: focus on a single customer. The way I like to put this is that it's expensive to sell and market to everyone. Select a group of people to help, and focus on helping them.
  2. Product: focus on your product and executing it; crappy products never win.
  3. Curate: choose what to put in, and even more importantly,leave out.
  4. User Experience: the business model is crucial, however the business model doesn't drive the product; the product is driven by user experience. If the experience isn't good, you're dead.
  5. Mobile: mobile, mobile, mobile. If a site is not mobile-friendly, it won't be a very rich experience for mobile users. Build for mobile first - the world is becoming mobile centric, here in the U.S. and especially elsewhere in the world.
  6. Ignore Computer Theology: If you spend a minute of your time in a theological debate about apps versus the web, iOS vs. android, you've wasted it. Spend your time figuring out how to reach people. People don't care what your app was written in. _At Intridea, we develop web applications in Ruby on Rails, along with other technologies including Node.js, BackBone.js, and mobile applications for both iOS and Android. So when it comes to web apps, we're a bit biased :)

See You Next Year!

If you missed DOF2013, be sure to catch us next year at Day of Foster.ly 2014. I'm sure it will be excellent and well worth your time.

Intrideans at DOF2013 from left to right: Jurgen, Tom, Marc, Brandon, Rob

Categories
Author

Starting at 10 AM on Saturday, May 4th (2013), hundreds of entrepreneurs will gather at Artisphere for more than eight hours of panels, workshops, chats, demos, expo, job fair and more at Day of Foster.ly 2013. If you're interested in starting, growing, or exiting a company, this conference is for you. And if that's not enough to pique your interest, the keynote will be delivered by legendary tech journalist Walt Mossberg.

Join Intridea at Day of Foster.ly

We're happy to announce that three Intrideans will be presenting at DOF.

From 10:15am - 11:00am, Jürgen Altziebler, our Managing Director of UX, will be on the UX/IU panel. And from 2:15pm - 3pm, Brandon Hunter, one of our excellent UX/UI designers and Tom Zeng, our Director of Engineering, will be conducting a 45-minute workshop: How To Develop A Responsive App Quickly With DivShot And Rails.

Also, I'll be manning our table, so be sure to stop by and say hello.

See you on Saturday!

Categories
Author
Subscribe to