Leave a comment

Web development company, Take 2

A couple of months ago the startup that I was working for closed up shop.  A few weeks later the salesman, another developer and I decided to start our own web development shop in Phoenix.  Skorpion Software, LLC was born.

Seeing as we have great experience working at a startup, we can transition that knowledge to helping other startups get to market with their minimum viable product (MVP) quickly and as inexpensively as possible.  Ruby on Rails is the perfect programming language to quickly create a fully working ‘prototype’ as an MVC.  The startup can go to market and then add on the ‘bells and whistles’ gradually as they have the money to do so.

We have also been doing some WordPress sites which are great for what they are made for.  Once you get to where you need more than WordPress can handle you need to step up to a full blown web application and Rails is perfect for that.

Although we can develop native apps like iOS and Android, I think that if you design a web app in the correct manner and develop it as mobile first, you might not have the need for additional native apps.  With some planning and skill, the mobile version of a web app looks, feels and works great.

So wish the 3 of us luck as we turn the page to a new chapter and venture down a new path 🙂

Leave a comment

Rails : Single Sign-On : Omniauth : Facebook — My Daily Technical Notes [ Ruby, Rails, Gems, Server Ops]

It is very easy to customize devise to implement single-sign-on with facebook. Assumption: You have setup the devise gem fully usable. Devise Omni-Auth In Gemfile: gem ‘omniauth-facebook’ This technique is applicable to any type of Oauth Provider: For a full list of these providers, please check OmniAuth’s list of strategies. $ rails g migration AddOmniauthToUsers provider:string uid:string $ […]

via Rails : Single Sign-On : Omniauth : Facebook — My Daily Technical Notes [ Ruby, Rails, Gems, Server Ops]

Leave a comment

Yo ho, yo ho, a freelancer’s life for me

It has been quite a while since I posted anything.  Lots of things going on and finding time to blog and the desire to blog has been hard.

After 2 years working for a company, I am back to Ruby on Rails freelancing.  Why choose freelancing?  Aren’t regular jobs more secure and stable?  There are lots of remote job? Why???

Well, to answer the issue of stability, I have to say that there is not anything in life that is stable, least of which companies.  Startups start and end.  Intel just cut 12,000 jobs. Companies are down sized, resized, bought and sold, so no, no job is secure and stable.

My long time client is a remote gig but as a freelancer.  I have worked remotely for a company before.  There are lots of Rails (and other programming languages) jobs for remote workers.  Probably due to what I was looking for I found that companies that I liked, did not want me and the ones that I wasn’t too excited about did.

I also looked at the available company jobs in the Phoenix area and honestly only saw a couple that seemed like a cool place to work and had something cool to work on.

So freelance it is.  While I wish that there was a place that programmers could go to to find projects to work on, there is not.  Now, I know that there are freelance developer sites out there.  If you are ok with bidding low and earning low, go for it.  The competition is crazy and you are competing with developers all over the world.  This includes countries with a much much lower cost of living, hence they can afford to bid low.

How do you find work?  Networking, networking and networking.  Tell people that you know what you are doing.  Go to developer meetups.  Meet people and spread the word that you are a freelance developer!  Of course there is a lot more to it than that but that is the basics, imho.

Leave a comment

Create and integrate SSL certificate in Rails app Using [ Godaddy + Nginx(1.8) + Puma + Ubuntu Server(14.04 LTS) ]

Source: Create and integrate SSL certificate in Rails app Using [ Godaddy + Nginx(1.8) + Puma + Ubuntu Server(14.04 LTS) ]

Leave a comment

Rails : Martin Fowler’s Tell Don’t Ask principle in Ruby

Source: Rails : Martin Fowler’s Tell Don’t Ask principle in Ruby

Leave a comment

Issues with ex-employee

So here is a question for all of you out there. You recently had to let go an employee due to cutbacks. This employee was chosen to be let go due to bad work ethics and bad attitude when others were able to keep their jobs.

Since then this ex-employee has been harassing your company by signing up with fake users and with harassing statements made on the companies platform live chat. Now none of these are “illegal activities” per se but nevertheless childish and immature.  I mean, I am not sure if it is illegal.  What defines harassment when it comes to the web these days?  Maybe it is illegal and legal action could and maybe should be taken.

What do you think the proper thing to do would be.  It goes without saying that I am sure that you would not give them a good reference every, but what else?  What would you do?

Leave a comment

Why software startups are like the Marine Corps ….

“Improvise, Adapt, Overcome” is the unofficial motto of the Marine Corps and should be the motto for a software startup if they are to be successful.

I would imagine that more times than not, the original “idea” for a money-making software application, is nothing at all what the end product will be.  In the freelance world, it is common to perform a “needs assessment” when talking with a new/future client.  It is the developers job to fully outline everything that the client wants for their dream software application to be and look like.  Myself, I prefer to do a full user story workshop.  This entails getting down to the nitty gritty of what every part of the app should look like and do.  This is all done with the current/existing vision that the client has.  And then development begins …

If I use a store bought box cake mix, I imagine that I can add all of the ingredients and it will come out just fine.  If I do it from scratch, well there will be somewhat of a trial and error with the ingredients.  Too sweet, not sweet enough, all this can change before the cake is done. Just like software.

With software development, there is a general direction that you go.  This is based on the clients needs/wants.  But the reality of it is that once you start and they see things begin to take shape, the idea that they had in their head morphs.  “I thought it would look good like this but now that I see it I do not like that …. “  Suddenly the straight line from start to finished product twists this way and that.

Many factors can cause a “change in direction” when developing a software application.  In the beginning their will be more input once it starts to take shape.  Beta testers and market research can cause changes to be necessary.

In addition to changes with the software, there will be changes to the team.  Hiring more, cutting back, hiring again… All of this is possible.  In the pursuit of a self sustaining product (one that pays the bills) many of these changes might be necessary. 

It isn’t easy, but in order to make it work, be ready to improvise on what your are building, adapt to trends and changes, and overcome any and all obstacles that get in the way.