• Welcome to the new Internet Infidels Discussion Board, formerly Talk Freethought.

For Tom Sawyer, and other programmers/developers

James Brown

Veteran Member
Joined
Dec 29, 2005
Messages
3,573
Location
Texas
Basic Beliefs
Agnostic Atheist
Tom et al,

In what will likely be a waste of my time, I've taken it upon myself to write a tracking tool for my SysAdmin teammates. I'm doing this because we used to have a tool, but it went away due to it being built on a Windows 2003 server which has now been decommissioned.

Unfortunately for me, the developer who created the original tool has left the company, and I don't know how to duplicate what he did. I don't have access to the source code or files to even parse out what he did. All I have to go on is a memory of how the tool worked. I'm hoping that if I can describe what the tool did, you clever folks can point me toward an application or language that I can use to build a new tool from the ground up.

See? Probably a waste of time.

Anyway, the tool was accessed in a web browser, and we used it to track tasks that our team had to perform (reset passwords, install new software, etc.) When the page launched, we saw a table. On the left was a column of tasks. Across the top were various statuses (Complete, In Progress, Offline, Withdrawn, etc.) At each intersection of Column and Row was a cell with a hyper-linked number. Click on the number, and a new page was drawn. Now on the left was the column of SysAdmin names, and the same Statuses across the top.

So, for example, at the first page, we might see a project called "Virus Scanner Update" with 400 systems under the column of "Not Started". Click on the 400, and every SA could see the number of servers he/she needed the update. My name might list, say, 25, under the column "Not Started". Click on the hyperlinked 25, and another web page displayed twenty-five rows with columns labeled Server Names, Domain, IP Address, etc. Now I can see which of my assigned servers need the update and begin work accordingly.

When the project is complete, each server row had a cell called "Status" with a dropdown box to select "Complete, In Progress, Offline, Withdrawn, etc.) The options to choose match the column headers, and as a status changes, the totals change on the previous summary pages as they are refreshed.

Management uses the tool to track who's done their work. Obviously the goal was to get your "Completed" numbers at 100%.

A few features that were very useful and would need to be in the new version:

1. Each server row had a "Notes" cell. Click on the cell and a text box appeared in which we could type notes.
2. One column was called "Scheduled". Click on the cell and a little calendar popped up in which to click a date, which then displayed as text in the column once we clicked 'OK'
3. The columns were each sortable similar to a spreadsheet.
4. An entire table could be exported to Excel.
5. The best feature: Click on a blank area of a cell (off to the side of a hyperlinked number) and the entire cell was copied to Clipboard. This way we could copy/paste server names, etc. The cell would change colors to show that the copy feature activated. Click on the cell a second time, and the entire row was copied to Clipboard. Click on the cell a third time, and the entire column was copied. Click on it a fourth time, and the cell would change back to its standard color, the Clipboard was wiped, and the cycle would repeat.

There were other features not as critical (Right-clicking a cell displayed a context menu, etc.) But those are the basics, and I don't know where to start.

Obviously the pages are drawn in HTML, but I don't know if the interactive features are handled with javascript, ASP.NET, or what? Sometimes I don't know how to describe what the tool was doing (so as to search for something similar in Google); I only know what the end result looked like.

I'm hoping the fine techies that hang out here can get me pointed down the right path.

Thanks in advance.
 

Kharakov

Quantum Hot Dog
Joined
Aug 3, 2000
Messages
4,371
Location
OCCaUSA
Basic Beliefs
Don't step on mine.
Web integrated task or project management spreadsheet or database.
 

rousseau

Contributor
Joined
Jun 23, 2010
Messages
12,279
The main issue I see in the potential success of this thread is that you yourself are abstracting an interface, and giving us another level of abstraction in your written word. So out of your description it's very difficult to know, in detail, how the original app was designed, even harder to tell you how to emulate it.

That said, I imagine there are multitudes of ways you could approach the project with different technologies. So without going into detail about a design (I'm not quite a designer yet myself), here's what I'd suggest:

- if you've never built an app like this before, or even worked on similar, I'd suggest it's a fairly big undertaking without the support of someone more senior than you
- if you want to take it on anyway, at least try to seek out a designer (who ideally has knowledge of the original app) who can walk you through all of the main components you need to build

Good luck!
 

fromderinside

Mazzie Daius
Joined
Oct 6, 2008
Messages
15,605
Location
Local group: Solar system: Earth: NA: US: contiguo
Basic Beliefs
optimist
Another wheel inventor. I'm with Kharakov. Use something that will do what you want the application to carry out with share features, mail, and management tools. Don't need to develop any of this. Just set up you cloud based sharing database configured to do things in a reasonably ordered and serial way. I'm sure something from like Microsoft office 365 would work very nicely.

Hundred bucks a year with lots of free space, interactivity between office components, with fairly useful help centers, and examples, with three computer licence.
 

Iznomneak

Member
Joined
Aug 21, 2004
Messages
361
Location
South Florida, USA
Basic Beliefs
Atheist
I'm not sure the best solution for you, that would require an in-depth conversation. That said, a few options that I have used in the past for similar projects come to mind.

1. https://basecamp.com - a free tool to manage projects

2. Microsoft SharePoint - This should be included in Office 365. You can set up customized lists of any type.

3. A web application written with Visual Studio, C#, SQL server (or other database), HTML 5, CSS3, JQuery (https://jqueryui.com/ ) for interactive browser stuff. Possibly AJAX and JSON.

#1 and #2 would not need a programmer. #3 would allow the best customization, but would be the most expensive and potentially leave you in the same boat you are in today.

There are a lot of other excellent technologies, but I'm only commenting on my expertise.
 

bigfield

the baby-eater
Joined
May 4, 2011
Messages
4,565
Location
Straya
Basic Beliefs
yeah nah
One could build your app fairly quickly using a PHP or JavaScript MVC or MVW framework.
 

NobleSavage

Veteran Member
Joined
Apr 28, 2003
Messages
3,079
Location
127.0.0.1
Basic Beliefs
Atheist
Do you have a specific software stack you know and like? Is there a specific database you need to use at work? Do you plan to run it off a server in the office or on remote hosting? I can probably come up with 25 ways to do this. The database side of it would be moronically simple. It sounds like you only need one table with four fields. A database is probably overkill -- it seems like a flat file(s) would do the job fine. The problem is going to be most of the software stacks that make this easy are going to presume a database. The web front end would be simple CRUD (Create, Read, Update, Delete) programing. Personally, I'd want a web front end not some Access crap. The sortable table, date picker, and export to excel should be made out of some type of Java Script (like jQuery as mentioned above).

1) I'm not a professional.

2) I don't like PHP because it's a cluster fuck. (Using a PHP framework will solve a lot of these problems).

3) I haven't actually tried the following; however, I hate CRUD programing and was looking for a simple and non tedious way to do it and stumbled on this a while back. This includes the Java Script.

The PHP framework CodeIgniter with the Grocery Crud plugin meets all your requirements. Examples:

http://www.grocerycrud.com/examples/full_example (everything you want but the date picker)

http://www.grocerycrud.com/examples/orders_example (this one has a date picker)

If you use the Twitter Bootstrap theme (sigh, more overhead and another framework) it will be responsive without any work:

http://www.grocerycrud.com/bootstrap-theme/

Main page of CodeIgniter: http://www.codeigniter.com/

Things I'd be concerned about: Will this project be around another 5-10 years? Frameworks are trendy, especially with PHP. It's 9 years old now and in 2014 things were looking iffy. I think the cool kids are moving to Larvel in PHP land. The parent company was tired of supporting the project, but they found a new home for it at some university in Canada. A new version was released some time this year so I think it would be ok.

If you needed to do something that doesn't seem to fit nicely into the examples ask about it on their forums first. Also ask if there is a way to use flat files. The simplicity of it might handcuff you. If you are the kind of person that will constantly tweak and add new features to this project to fix all of humanity's problems -- don't bother with a framework.

This will run the best on a LAMP stack, but theoretically it should install on Windows Server and with ODBC talk to MSSQL or whatever database.

You could outsource this for around $300-500. If this is your first time doing this it will chew up a lot of your time. Your second time will be easy.
 
Top Bottom