Skip to main content

Mobomo webinars-now on demand! | learn more.

You might be saying to yourself, “self, is there really a business case for wearable technology? Souped up watches, trackers, and glasses? I don’t get the appeal.”Well fear not skeptic.

Come sit by the fire and let Mobomo’s chairman and founder, Barg Upender, teach you the ways of the force about wearables. His recent talk at MoDev East 2013 will answer all your “I’m-not-convinced” questions. [Plus, you get to hear Barg snoring at around 1:41. And let’s honest, you’re here for the Lulz.]

Categories
Tags
Author

Every so often the web development world experiences a tectonic shift as new technologies inspire a new way of thinking about application architecture and development. We began our work at Intridea in 2007 by focusing on the then-nascent Ruby on Rails world. What was once a niche is now universally recognized and powers everything from tiny startups to some of the largest applications on the internet.

We love Ruby (and Rails) and will continue to evangelize and utilize it for our clients, but our mission is to make, not to make using a single technology stack for every application. More and more, we see a best practices approach including static web applications.

In some ways, static web applications are nothing new. They're made up of HTML, CSS, and JavaScript like many other applications. The difference is static web applications make use of modern browser technology to perform dynamic processing on the client instead of on the server. So why are we excited to build static apps?1

Broad Appeal. Static web applications are built using HTML, JavaScript, and CSS. While web developers may specialize in languages and frameworks such as Ruby, Python, or .NET, just about every web developer (as well as many designers, entrepreneurs, and students) is familiar with these universal building blocks of the web platform.

Rapid Development. Using modern frameworks such as Bootstrap and AngularJS, and tools such as Divshot, you can quickly "sketch out" an interface and turn it into a rough static prototype. That prototype can then become your application by hooking it to back-end data services.

Simple Scalability. Static web apps are just files stored on a web server and sent to the end user as-is. They can be scaled to millions of users with off-the-shelf technology. You'll still need efficient, scalable back-end services, but such services are increasingly available from third party vendors. Static apps let you focus on your application, not your infrastructure.

Day One Modularity. All web applications at scale separate into some form of modular architecture. This allows developers to build pieces of the overall application using specialized technologies that are well-suited to specific problems. Static web applications encourage this modularity from the beginning by forcing all back-end data to be provided by services separated from the front-end interface.

Increased Flexibility. It's easy to build alternative interfaces when front and back ends are separated. Building a mobile application, exposing a public data API, making a command-line client, creating an administrative control panel, and more become much simpler when the back-end and the front-end are built independently.

We are proud to be an early believer in the static web platform and are closely tracking further advancements such as Web Components. Stay tuned to this blog and follow us on Twitter as we dive further into static web tech. Also, check out the Static Showdown a 48-hour worldwide hackathon for static apps taking place Feb. 8-9, 2014. We're sponsoring!

1 Content reused with permission from StaticApps.org, a community resource site for static web applications.

Categories
Author

placeholder

There’s a rumor going around that Rails isn’t as sexy as it once was; that Javascript is the next world power and Single Page Applications (SPA) have better UX than traditional multi-page sites. Well, to this I say, nay!

Over the last few months, I lead the development of an SNS (social networking site) website, BibRave.com, based purely in Rails 4.

It had been a while since I’d done anything this Rails centric, but after this project, I firmly believe Rails is still a powerful framework. Born to demonstrate business models on a code level, Rails’ flexibility can cover any and all complex business situations.

Don’t believe me? Well, let me show you…

How we built BibRave in Rails4:

Any project is about telling a story, for BibRave, it was a website enabling people to share their thoughts and ideas on various running races. The key pieces of this story being people, share, feelings, and race; core concepts of any SNS website. Similarly, anyone can build a business model to let people share something, A about something B, it's the basic relationship and connection of a classic SNS.

In addition, to build upon the story, designed pages based on Twitter’s Bootstrap and UX/UI criterion were given prior to the project start date. These were excellent roadmaps for the project, and while it was only three simple pages, I was able to work out several models and their relationships or logic connections.

Harnessing the Power of Rails:

Next, was the development process via Rails.

First, to implement the user authentication and sign in workflow, I utilized existing tools just as Devise and OmniAuth. Also for the admin interface, I chose to use RailsAdmin, a gem that allows you to override any defaults. These Rails features, with ecosystems full of reusable tools or libs, laid the foundation for BibRave and were tremendously time efficient!

Secondly, Rails caters to client-to-code interactions. Often, a client doesn’t know exactly what they want; setting the stage for inevitable tweaks and adjustments within the code. Rails makes this easy. Allowing me to delivery tiny interactions of small features quickly, this language was a great tool for pushing forward and presenting the client with visual progress.

Rails is a valuable framework; it allows developers to apply customized solutions and implement a variety of features. If a client wants to balance the complication and usability, while also getting an MVP quickly, then Rails is an excellent choice.

So, for those on the fence about Rails; don't underestimate its power. It’s got more utility than you may think! Maybe even more than…*cough* JavaScript.

Categories
Author

We've all come across API documentation that is out of date, lacking details, or just plain wrong! Often times an API’s documentation is entirely separate from the code itself, and there is no verification of the documentation's accuracy.

So how do we overcome this? Well, one solution for this problem is to generate the documentation as a result of passing acceptance tests.
The rspec_api_documentation gem allows you to write specs that generate HTML formatted documentation. The rake task included for running your doc specs is rake docs:generate, which puts the HTML files in the project's ./doc directory. If any specs fail, the documentation doesn't generate.
Once the documentation is generated, it’s time to add a documentation viewer to your API server.

There are two gems for serving API documentation:

Mounting the API documentation server as part of your API server and running rake docs:generate as part of the deployment process ensures your documentation is up to date and available.
So, if you're going to create an API, use grape, rspec_api_documentation, and raddocs to ensure testable, accurate, and up to date documentation. Your API users will thank you.

Included is an example repository using these tools here: api_documentation_template.

Feel free to comment, ask questions, or share! We'd love to hear from you.

Categories
Author

In part one of our single page apps series, we discuss the top client side MVC frameworks rankings based on Github stats. Based on the number of people who starred the Github repositories, we can extract the following list of top JavaScript client side MVC frameworks:

JavaScript MVC Framework Rankings

link to the ranking app screen shot

Notice if we count the Backbone extension frameworks like Marionette(4261), Chaplin(2483), and Thorax(1098), Backbone is still #1. Angular is growing at a faster pace though, and at some point may surpass the Backbone+extensions.

Here's a little app using Rails 4, Twitter Bootstrap, Highcharts, and MongoDB/Mongoid to track the rankings of those frameworks. See screen shot below.

link to the ranking app screen shot

If you're interested, feel free to clone the repo https://github.com/tomz/jsmvc_rankings and play with it. You can run rake tasks to initialize and fetch latest stats, via github, by running the following:

rake seed_stats  rake update_stats 

The rake task can be set up as a daily cron job to collect the trending data of each framework, you can do so by running:

whenever -w 

Note: The term MVC is used loosely here to include all the MV* frameworks.

In part 2 of this series, we'll walk through building a Single Page App, or SPA, using Backbone Marionette, Angular, and Ember.

Resource Links:

JS Framework tracking app https://github.com/tomz/jsmvc_rankings

Angular https://github.com/angular/angular.js
Backbone https://github.com/jashkenas/backbone
Ember https://github.com/emberjs/ember.js
Flight https://github.com/flightjs/flight
Knockout https://github.com/knockout/knockout
Marionette https://github.com/marionettejs/backbone.marionette
React https://github.com/facebook/react
Polymer https://github.com/polymer/polymer
Spine https://github.com/spine/spine
Chaplin https://github.com/chaplinjs/chaplin
Sammy https://github.com/quirkey/sammy
Enyo https://github.com/enyojs/enyo
Thorax https://github.com/walmartlabs/thorax

TodoMVC http://todomvc.com/

Categories
Author

placeholder

For many people big data is still a mysterious word to describe everything and anything. Explaining it can be an art all its own, and in today’s day and age visuals are a necessity. As stated in David Hoffer's, What Does Big Data Look Like? article, “a simple Google image search on “big data” reveals numerous instances of three dimensional ones and zeros, a few explanatory infographics, and even the interface from The Matrix”-leaving you to wonder, just what is big data?

At Intridea, we’ve had a few opportunities to visually define big data. Our most recent project being, HumanProgress.org; a comprehensive research tool that allows users to explore a wealth of data on human well-being and human development indicators.

With interactive maps, visually stunning displays, and real time data, Intridea dug deep into the trenches of big data; sifting, managing, and eventually empowering users through data visualization. It was here, as Hoffer states, that big data became “human”. No longer locked in thousands of spreadsheets, Intridea gave life to a tremendous amount of data; making it approachable and interactive.

Big data can be an ominous word, but it doesn’t have to be. Thanks to data visualization, the abstract isn't so mysterious anymore. And as Hoffer explains, when done right, “big data becomes more malleable, actionable, and, ultimately, more human”...something we all could use a little more of in today’s cyber society.

Categories
Author

Zen
A morning commute to a home office (or the kitchen table) is a wonderful opportunity to think and work without the typical interruptions that come up in an office. It’s also a potential shortcut to driving off the cliffs of reclaimed productivity and into the sea of the uninspired. Here are a few tips to keep you on track and motivated every day.
Embrace your morning "commute" Wake up to an alarm as if you were commuting to an office. Make a healthy breakfast. Get dressed (shirt and pants optional). Read a chapter in a book, or go for a stroll, or learn meditation. Declare your intention for the day. Waking up on a schedule provides inherent structure to the day, which is vitally important to your productivity - work and otherwise.
Communicate Working from home does not mean working in silence; in fact, it’s more important to communicate regularly when you work from home. Start your day checking in with clients and your team. This will give you a sense of community and ensures everyone is on the same page!
Leverage your evening "commute" It is easy to fall into the habit of not leaving the house, especially when you don’t have to! In the spirit of maintaining a healthy and productive daily schedule, take advantage of the time you save not having to commute to enjoy exercise and fresh air. It may sound cliché but getting the body active and energized will translate to a more inspired work day.
Shower I’m not saying this to acknowledge any stereotypes (ahem, work-from-home developers!). Just because you don’t have to make yourself presentable for the office does not mean you do not benefit from making yourself presentable. As simple as this sounds, taking a shower and putting on clean clothes makes you feel better, makes it easier to get out when the mood strikes, and makes those client/team video chats a little less scary for others.
Capitalize on your creativity Feel a creative wave coming on at 8pm but you’ve already clocked out for the day? Creativity can show up at all hours, and while I do not condone breaking family dinner for an impromptu coding session, make a note and revisit after the dishes are done. This is one of the most important benefits unique to working from home, you can strike when the motivation hits. Optimizing break time is equally important. Lasso your focus and step away for a moment if you’re spinning your wheels.
More working remote goodness below:

  • Working from Home in 5 Simple Steps
  • Introvert's Guide to Working Remote
Categories
Author

RUNNERS
New Year resolutions are kicking into high gear! And like any resolution; strategy and commitment are essential. Keeping yourself on track, encouraged, and most importantly accountable are crucial pieces to attaining your goals.

In the realm of fitness, the online world is full of resources. From activity trackers and weight loss apps, to virtual trainers and coaches; there’s a tool for almost every stage!

One app, Intridea is particularly proud to introduce is, BibRave.com.

Thanks to a few avid runners and Intridea, this site enables runners of all stages to inspire, inform, and encourage one another through live social media streams and race reviews.

Stemming from a less than stellar race experience, Tim and Jessica Murphy, saw a need to place better information at racers’ fingertips! Thus, after months of planning and research, and a partnership with Ruby on Rails experts, Intridea, BibRave was born!

Getting the inside scoop on a race has never been easier. BibRave equips runners with honest to goodness feedback and details on information they actually care about. From runner schwag and crowd atmosphere, to trail terrain and race organization, BibRave is more than just your ordinary race page, its a community.

Intridea had an awesome time bringing BibRave to life and would highly recommend it for your New Year’s resolution toolbelt!

Categories
Author

Tech events and trade shows are great places to get out there and meet people. Unfortunately, they are also an easy place to fail at life. We here at Mobomo have done the event and trade show circuit over our long, illustrious careers, and we see the same mistakes every time. Here are the common no-nos:

Not speaking at the event

 

Being a thought leader is the best way to attract new customers and talent. Everyone has something to talk about — even a talk on your lessons learned from your favorite (or worst) projects can bring you some great publicity. Plus, you get to network with the other speakers and influencers. You never know where a connection will take you. The object of speaking is simple:  see and be seen!

tumblr_inline_my0rw07dhH1s3db6i

Hanging out behind your table/booth 

This is a cardinal sin. Time and again we see people stand behind the table (or behind their laptops) at their booth. Put the laptop away; you’re here to meet people! Get in front of your booth and have as many conversations as possible. This is the time to share your stories, learn from others’ problems and, of course, collect cards. Don’t forget, a smile goes a long way. Be friendly and invite people to chat even if they are just walking by.

Not showing off your team members

tumblr_inline_my0qdan3wX1s3db6i

Events are for more than just peddling your wares and handing out shwag. They’re actually the perfect venue for showcasing your studs. Bring your entire team (and if its local, there’s no excuse not to). Make it fun:  wear company t-shirts; the more ridiculous, the better. Now that you have more people to help you out, you should:

  • Have a minimum 2 people at your booth
  • Divide and conquer
  • Meet people anywhere possible (breakouts, lunches, parties, or just walking around the event

Ignoring your “frenemies”

tumblr_inline_my0s3wFmCN1s3db6i

You’ve heard the old adage about keeping your enemies closer than your friends. Well, in tech, failing to follow this advice is a cardinal sin. Take time at events to meet and greet your competitors (or as we like to call them “frenemies”). Learn what’s working for them (if they’re willing to share), exchange war stories, and gather intel. In reality, most of your frenemies probably have different core competencies than you anyway.

Networking FAILs

tumblr_inline_my0u0saJul1s3db6i

In tech, you never know who your next partner will be. Even your frenemy. When you’re at an event, it’s time to get organized and be proactive. Step out from behind your booth and meet every person you can. Start smart: become best friends with the organizers. They can make intros to other speakers, sponsors, and influencers. From there, the name of the game is network, network, network!

A lack of celebration

tumblr_inline_my0tcydrrq1s3db6i

Everyone loves to party and a tech event is the perfect time to have one. Once the day’s activities wrap up, make the real fun begin. Have an after party — invite your team, potential leads, and future partners. Hand out a cool gift or hold a raffle. What’s better than free trade show shwag? Raffles for expensive gear.

Failing at the follow up

tumblr_inline_my0t5nkz1Z1s3db6i

"Nice to meet you" and thank you notes are more than just professional courtesies. They are great ways to follow through with new connections and leads. They’re those "hey remember me?" notes that could lead to closing a new lead or bringing in a new developer. If you attended the event right, you should have a lot of follow ups and thank you notes to send, so make sure to start with your most urgent needs first.

Wrap Up

Overall, tech events and trade shows are a fun place to spend the day. You can learn lots and meet interesting people. At the same time, you could be wasting time if your head isn’t in the game. But don’t worry, you’re smart. You work at one of the smartest companies in the world. You don’t make these n00b mistakes…right?

Categories
Tags
Author

heart

With a plethora of frameworks readily available to choose from, sometimes it can be a bit overwhelming to choose one that is right for you.

Here at Intridea, we tend to gravitate towards Bootstrap as a base for our projects such as Humanprogress.org; even this site has some traces of Bootstrap in its core! Using Bootstrap works because it’s easy to get started, gets the job done, and with tools like Divshot, we can get a prototype off the ground in no time.

Frameworks help get things out the door quicker, but sometimes as the project expands, you start to experience growing pains and the technical debt starts to pile up. Not only that, but let's face it--not every project is the same and they all have their own specific requirements and surprises.

In many instances the framework can’t always handle such elements. Thus, there are usually three inevitable phases that come along when using a framework...

Note: These may not always apply to each framework.

Phase 1: The Honeymoon

This is the phase where everything usually just works and you can’t find any faults. Everything about the framework is perfect and you don’t second guess the decision to use it for every project no matter how big or small. You start to really fall in love with the framework and things can’t get any better….

Phase 2: The Challenge

This phase is where reality sets in, things can get extremely frustrating, and your framework “commitment issues” begin to creep up.

Your beloved framework is doing more harm than good. You find yourself overriding everything and changing core components-- leaving you with a hybrid framework or complete mess!

You begin to realize that your markup is starting to look like its been through a blender and it’s tightly coupled and it’s going to be a nightmare to maintain! At this point, you also start playing the questioning game, second guessing your "new love" and wondering if this was a huge mistake...

Phase 3: Road to Recovery

When you reach the breaking point, you tend to go into survival mode, seeking all viable options...

Questions that come to mind are:

  1. How much of the framework am I actually using?
  2. Is it too late to try something else?
  3. Should we scrap this and start over?
  4. How can you prevent yourself from making the same mistakes again?

Well lucky for you, we've run into these issues before and thus embarked on creating a solution...we call it: The Commitment Analyzer! It’s a simple bookmarklet that scans the current page and gives you insights as to how committed you really are to that framework.

This is useful because you might determine that you are using very little of that framework, or that you are in deep. If the framework has a build tool like Bootstrap this can help you pick and choose which components to include, that way you only have what you really need.

The bookmarklet currently has support for Bootstrap 3 and Foundation 5 with more coming down the road. The biggest caveat is that you have to run it on a page by page basis but nonetheless, it beats doing a find all in your project for each class name.

Let us know if you have any suggestions or if you want to add a framework head over to the Commitment Analyzer.

Drag this to your bookmark bar, navigate to the page you want to analyze, open up the console and run it.

♥ Commitment Analyzer
Categories
Author
Subscribe to