Erek Dyskant on 27 May 2008 14:05:50 -0700

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] Need to build a web gui for a router box--possible contract job opportunity.

Some things to consider:
	(1) You may want to couch it as two positions: a frontend designer and
a backend developer.  If it turns out to be the same person, great, but
a good site designer can really help out with projects like this, and is
a very different skillset from a good developer.
	(1a) If you can pay for it, this may be a good candidate for just
hiring a web application development firm to do the whole thing.  That's
probably be your quickest to market decision if you pick the right firm
with the right communication.
	(2) Have the application flow together before you start with the code.
By this I mean feature list, wire frame, AJAX behavior list, database
	(3) As for other web development environments to look at, there are
many to choose from: PHP/symfony or codeigniter, Python/Django, ruby on
rails, and many more.  This may be unpopular, but I see them  in a
they're all the same light:  All of these provide you with the tools you
need to make a manageable web application when combined with the
appropriate talent.
	(4) When it's marketed in appliance form, what will the CPU and
code-size limitations be?  This may inform your decision on web
technologies to use. 
	(5) What will the integration between the frontend web application and
the back-end configuration management be like?  This should be more
robust than a set of commandline options, and should by documented fully
for internal use.  Look into  REST/SOAP/XMLRPC, or maybe even a
database-only interaction (both read from the same database, with hints
for when an update has occurred)
	(6) Depending on your market, consider documenting the
machine-interface for customer use.

	Best of luck with the project.


On Tue, 2008-05-27 at 16:33 -0400, Eirikur Hallgrimsson wrote:
> The good news is that the hardware is a Stratus dual server, which is to 
> say a powerful box with a reasonable amount of physical memory.   OS is 
> a recent Red Hat with paid support.
> The product is about as complex as one of the better home router/gateway 
> boxes.   That's the size/complexity of the GUI that we need.  Today it's
> four tabs at the top level.
> The bad news is that I took over this project from a person who left the 
> company and everything I've found out about his implementation is that 
> it's just a GUI shell that doesn't do anything. It's 
> Python/GTK/Glade--right up my alley, really, I love the tools but my 
> conscience requires me to advise my employer that there is so little 
> actual code written that considering other approaches at this point is 
> mandatory.
> Future versions of this router will be appliances with no screen or 
> keyboard, so staying with the X/GTK approach looks broken to me even for 
> the beta / V1.0.  I know of no way to map GTK/GLADE into a web app--do 
> you???
> The only technology that I know of that would let us build this thing 
> *quickly* with a built-in web app that functions as the GUI is Ruby on 
> Rails.  I've hacked the Rails source to fix a problem, but I've only 
> made trivial web pages with it.  I'm not the guy to hit the ground 
> running confidently toward a great-looking configuration GUI using 
> Rails.  I'm thinking Ajax, etc, but I'm not really a web guy.
> If it weren't for the time pressure--the GUI is now on the critical 
> path, I could do this, in Rails, but I'm not convinced Rails is the way 
> to go.
> What else should we be looking at besides Rails?
> If you are a Rails guru and this sounds like a piece of cake, I'll pass 
> your resume along--the employment would be for the project duration and 
> probably a job shop that my employer uses today.
> The same goes for any well-established competing technology--if you 
> could do this for us, send me a resume.
> Eirikur Hallgrimsson
> Attachment:  The boss's version of my list of applicant requirements.
>   We’ve developed an application to perform certain tasks, but it’s all 
> command-line driven (and not very user-friendly). We’re looking to 
> create a web-based interface and we’re now in need of someone proficient 
> in Ruby on Rails. Our developer listed the following criteria:
> - Someone who can really program in Ruby beyond the minimum amount 
> needed for simple, static web sites. (Not just a person who read a Rails 
> book or two)
> - Ability to design the database schema and program a fair amount of 
> logic will be required.
> - Experience with JavaScript and Ajax.
> - Knowledge of Rails weak spots.
> - Experience in securing a Rails application.
> - A list of sites (portfolio) would be preferred.
> ___________________________________________________________________________
> Philadelphia Linux Users Group         --
> Announcements -
> General Discussion  --

Philadelphia Linux Users Group         --
Announcements -
General Discussion  --