Dumb Idea or Good Idea?


One of the most often used terms you hear in a meeting at Microsoft is “that’s the dumbest thing I have ever heard“. Sometimes this is true (remember Hailstorm?), sometimes its not (combine Excel and Word into one suite of well-integrated products).  I’ve been kicking around ideas for starter kits for Whidbey.  A starter kit is an out-of-the box pre-built app that should solve a specific customer problem (check the existing ASP.NET starter kits). I asked two colleagues for their opinions on my idea.  One saidThat’s the dumbest thing I have ever heard“ (PS: you rock Joe), the other saidthat’s a great idea, I spent the last summer doing this!”  (PPS: you rock too Shreyas).


 


Your mission: Decide who’s right 🙂


 


The Idea


The idea is to create an intranet web site starter kit for a corporate IT department, including features like asset tracking, a help desk ticket system, reporting, FAQs, employee phone book, dynamic Org Chart, downloads, etc.  A customer could get the starter kit, change some settings and be up and running in minutes (rather then months). 


 


Why


Why create this starter kit? Because our developer division doesn’t focus much attention on IT apps (try and find good examples on using Active Directory) and I think we could create a compelling application that you could drop into your company and get working easily.


 


Additonal feedback


PS – If you do like this idea, prioritize/stack rank the features you think are most important.  Each feature has a letter next to it, so if you think something is a must have, add it as a PRI 1 in your response.




  • Ex:
    Pri 1 – Features a,b,c
    Pri 2 – Features d,e,f
    Pri 3 – all the rest

MyHelpDesk Starter Kit Details



  • [a] MachineTrack web page

    • This consists of a Hosted Windows Forms Control embedded on a web page (similar in concept to ActiveX) that polls your local machine using WMI for information an admin wants to track like CPU, RAM, registry keys, HD space remaining, Operating System, etc and adds it into the company asset tracking database.  The user clicks a button, and similar to Windows Update, the control inspects the machine configuration. 
    • Data is then stored in the company asset tracking database, which can have multiple copies of the same machine information at different times (Jan, Feb, Mar) and also store multiple machines per user.
    • Extensibility – Code could be added to automatically suggest software to install – ex: Check for Norton Antivirus, if not installed, show the user a link on a web page to install.

  • [b] MyPC

    • This would be a user report front-end of the contents of your PC using ASP.NET or SQL Reporting Services. You would be able to see all the info captured in [a].

  • [c] HelpDesk Ticket System

    • Have a mechanism for users to submit helpdesk requests (for a specific category) which go into a queue of open helpdesk tickets.  The user also receives an email confirming the ticket has been opened.
    • The helpdesk ticket is then assigned to (or picked up by) a support person who then contacts the user to fix the request.
    • When the support person closes the ticket, an email is sent confirming this to the user, and the support person can add comments on the ticket.
    • Extensibility – In the “close ticket” email, you coudl include a link to a unique survey form which asks the user to rate the support person’s help.

 



  • [d] FAQ

    • This an engine to create and organize Frequently Asked Questions for administrators.

      • You can define multiple FAQs (rather then one large one) and also create categories to better organize FAQ questions.  All this is done through a web-based interface.

  • [e] Downloads

    • This would be a list of all corporate approved downloads ranging from utilities like WinZip to corporate TrueType fonts. All downloads would be categorized and include some other attributes like file name, description, vendor URL, version, location (install from the closest copy to you geographically), download count, user ratings, and comments.

  • [f] Phone Book

    • Using Exchange/Active Directory, create a simple web front-end for the corporate phone directory. Users can insert/update their phone numbers and search for the phone numbers of other employees (should this be separate or rolled into the org chart?)

  • [g] Organization Chart

    • Using Exchange/Active Directory, admins can create a report-to chain.  Using ASP.NET’s treeview control, you can create a simple visual employee hierarchy. Which shows you, your manager, your manager’s manager, etc.  Clicking on an employee shows their information (office, phone, email, title, etc)
    • Extensibility – Easily add the ability to have a picture associated with each employee.  Users can only change their picture

  • [h] Contacts

    • Typical contact/about page

  • [i] Announcements

    • Simple user control listing announcements as html (no admin gui for this)

  • [j] Administrative Reports                         

    • This is a group of reports that takes the information gathered in AssetTrack and the HelpDesk system
    • Asset Track

      • Want to see how many users hard drive is >90% full?
      • Want to see which employees have the lowest RAM/CPU speed?
      • Want to see which employees are still on old operating systems?

    • HelpDesk

      • Who closed the most support tickets?
      • Who average the most closed per hour?
      • Who has the best review scores?

    • Extensibility – Add the ability to see all of the above reports over time (trend up/trend down)?

  • [k] Active Directory user management

    • I don’t know what to do here (if anything).  What are the common tasks you would want to manage in a web interface?
    • Logged-in users?

So what do you think? Also, is making Active Directory and Windows authentication a requirement okay?  Does the app need to play with Windows Sharepoint Services and Sharepoint Portal Server?


 


Vote today!


 

Comments (27)

  1. TJ says:

    I think its a good idea. Its always hit or miss with this kind of thing, but I think you will hit a good number with this idea. I know if this was something released in the first version of visual studio.net I would have implemented it at my former company.

    Issue tracking is one of those things that all software companies should have but not all do.

    Pri 1 – Features C,A,J

    Pri 2 – all the rest

    Kudos, good idea

  2. ron says:

    Prj 1 – Features C, D, J, I

    Prj 2 – All the rest

    AD/ Windows Auth?

    Ok for everyone in the AD, but please don’t make it a requirement for users as users could be spread across the nation usng different OSes. Would really prefer Forms Auth.

    Sharepoint Services and Sharepoint Portal Server?

    Again, this is OK for the admins and advanced users but please consider that there will be users on Unix/Mac machines that will access this resource

    I am really excited about this 🙂

    thanks,

    -ron

  3. George Chernyha says:

    Dan,

    I’d like to preface my comment by saying that I work for a financial services institution with more than 20,000 employees (and Windows desktops). IT support is a "whole ‘nother ballgame" in this space.

    I would never say "that’s the dumbest thing I ever heard" (OK, so I’m not qualified to work at Microsoft), but, as someone who’s built exactly the same application you describe, I would say, "that’s a solution looking for a problem". In the large-enterprise world, the users of such an application don’t have the time (or care enough) to follow through on all the manual effort it demands. Assets flow into our space like water through a 24" pipe. Even with barcode scanners, you just can’t throw enough people at it. The same goes for every other feature you describe. At some point, the support/maintenance factor outweighs the benefit factor.

    That said, go forth with your idea, keeping in mind that "one size does not fit all".

  4. Kent Tegels says:

    They are both right. Starter kits are a great idea because you can learn a great deal about programming from reading source code. That said, I don’t feel they have to be 100% wonderful, powerful applications to get the point out. That they happen to be useful is a great bonus!

    Personally: D, F and H are high priorities because they cover a lot of ground.

  5. Chris Kinsman says:

    Love the idea of the starter kit. However I think the ASP.NET team has done a fairly good job with their starter kits. I would love to see more starter kits in the Windows Forms arena…

  6. Matt says:

    I think its a good idea, you can never have too many ready made applications. I however have to agree with Dan to a point, "One size does not fit all"

  7. excellent idea

    i see this kind of app implemented over and over again …

    it’s a good idea in that it’s tickling admin/support stuff to install and learn .NET on the server side AND helping them with their daily work

  8. You have been Taken Out! Thanks for the post.

  9. Snorrk says:

    I agree that "one-size-doesnt-fit-all". But the point in releasing the source code with the starter kits is exactly that they are *Starter Kits* – a point from which you can develop them further and adjust them too your needs. They are not shrink-wrapped products.

    One thing that comes to mind about the Sharepoint integration: How about exposing the data as WebServices? That would make it easy to create WebParts that use the information gathered by the tool.

    So I vote YES – more starter kits please!

    >S

  10. ray says:

    This is a great idea and is a perfect tool for smaller companies (< 250 PCs) that cannot afford SMS or other management software, as well as providing developers the chance to learn from the source.

    Authentication: Try to abstract the authentication layer so that this does not require AD. This will also help with integration with other Starter Kits and internal projects, such as the Community Starter Kit, ASP.NET Forums v2.0, internal company user databases, etc. However, keep the Windows auth option so that Windows users do not have to log in.

    SharePoint integration: Very good idea, especially if you use Snorrk’s Web Services idea and some pre-built custom Web Parts.

    Reporting: Unfortunately, Reporting Services requires the installation of at least one Standard Edition SQL Server, so this should be an option for those only using MSDE. The Reports Starter Kit might be useful in this instance.

    This Starter Kit will be even more useful as a learning tool if it is produced in conjunction with the Windows Forms Starter Kit team. This can then be used to show thin client, rich client and smart client functionality (see Task Vision application on http://www.windowsforms.net). If possible, non-UI components should be shared.

    Pri 1: a, c, d, j

    Pri 2: b, f, g, h, i

    Pri 3: e, k

    Finally, try to involve the community in developing the Starter Kit from the beginning, especially as the Whidbey Alpha and Beta releases will be more widely available.

    Good luck

  11. I know you want to make something for Whidbey, but why couldn’t this be one of those Solution for Intranet kits, and run on Windows SharePoint Services? 😉

  12. Khurram At SharpCoders Dot Net says:

    PRI1 a, c, d, f

    PRI2 b, k

    PRI3 g, h, i, j

    The kits should be modular and plugins friendly.

    Rainbox and DotNetNuke are much better than IBuySpy

    The kits can be hosted on gotdotnet workspace, where many people will be contributing. And due to continuous on going work, end developer will be getting releases continuously and ofcourse of better quality.

  13. Keith Patrick says:

    Sounds a lot like another Duwamish or Northwind (although I always figured it would be pretty neat to start a real-life Duwamish or Northwind and just use the sample "products" as the primary biz system). Is that the kind of thing were these features incubate, or is this a conceptually separate and true app that is expected to be used rather than as a learning tool?

  14. Jeff says:

    It’s a good idea, but not so much as a stand-alone kit. I’d make it as a series of modules that are easily installed into something else like one of the portal apps that already exist.

  15. Michael Stuart says:

    Sounds good for small to medium-sized companies. Perhaps make it easy to turn on/off specific features. Then, if you don’t want to use something like the inventory tracking, you can turn it off in the settings. I would like to see all the starter kits use a common framework. All the starter kits would really do is give you modules that can be plugged into your existing framework to accomplish certain tasks. They don’t all need to reinvent the plumbing. It think this is what DotNetNuke does really. They have even created a new kind of 3rd party component market…people are buying new "modules" that easily add a certain functionality to their existing website.

  16. Jeff Lewis says:

    I think that this is a good idea. Other comments have said it: you can’t hit everything that everyone wants thought – that’s why the source is included!

    The key would be to make it pluggable…

    The only other problem is that you have proposed a lot of functionality. Now you do have until 2005, but is that enough time?

  17. Greg Hughes says:

    Good idea. A very good idea. Here’s why.

    1. You’ve giving an IT department a real-world reason to care about Whidbey and using it when it is available (and depending on your schedule and the company’s licensing agreement, maybe even before it’s available). For an IT department, change that’s difficult yet has no other real tangible benefit is change that is not likely to happen. Conversely, any real, tangible benefit resulting from something new often trumps any change-related pain, and so adoption in that case is more likely. Not to mention that IT departments in a significant percentage of companies need to sign off on software before it’s broadly-used. Call it evangelism, since that’s what it is. Show it’s value early and in real-world terms, your more than half the way there.

    2. You can easily fit this into Microsoft’s other big-push initiatives that touch IT. Specifically, I think you should definitely leverage Sharepoint Portal Server (which has to be purchased separately) and/or Windows Sharepoint Services (which is a free add-on to Windows 2003 Server, so I can’t think of many reasons not to leverage it given the platform requirements). I think this part is critical, and it would be a deciding factor in whether I would seriously consider your starter kit (an in turn replace my existing proprietary help-desk application), simply because Sharepoint represents an investment in both time and money we have already made. One of the beauties of the Sharepoint model is the ability to create a one-stop-shop for employees to locate and use information. Your starter kit, if exposed via Sharepoint web parts, would feed right into that model, with highly-relevant information for both IT and end-users.

    3. It saves time and money. For an IT department, this means efficiency. Any time you can create cost and time savings for a department that fits into the unfortunate class we call "cost centers," you’ve done something truly valuable. Focusing starter kits and quick, low-cost solutions on areas that are non-revenue-generating for their parent companies is quite important when looking at how much value you can add. If you save me time, you save me money. If it works with other apps (read: Sharepoint, web-services exposure, etc), you’re talking my language. Your idea fits right-smack-dab in the sweet spot here.

    Thanks for the opportunity to comment on the idea. I’d say go for it, and I’ll look forward to what you come up with. Glad to help where I can, too. 🙂

  18. great idea – can you have it done by end of next week :)?

    PRI1: a, c, e, f, h, i, j

    PRI2: b, d, g, k

  19. Mark Levison says:

    Starter kits in general – a great idea. But please make sure this polished work, Unit testing, argument checking and all the other best practices that you expect people to pickup on. Consider having public reviews of the code before actually baking into the Whidbey.

    As for priorities – I can’t say. I’m a Smart Client Developer, so I’ve no opinion about ASP .NET. I would love to see a real No Touch Deployment app as starter kit. In fact that’s just what asked for (http://dotnetjunkies.com/WebLog/mlevison/archive/2004/03/04/8417.aspx) in my followup to Jon Udell’s interview with David Treadwell.

  20. Phil says:

    Starter Kits are great! Most of the times, the starter kits are so generic (which is good) that you end up reimplementing them. Try and make the source code the best that you can (use coding standards, design patterns, best practices), becuase junior developers will cut their teeth on the kits. Some of the starter kits, and some of the open source projects have so many developers with varying styles, which makes the code hard to follow in the absence of a unified coding/design standard. In addition, don’t try to throw in integration or dependencies on frameworks/products that people have to pay for: Keep data in XML files (or at least say that the kit requires SQL Server), don’t reference libraries outside of the .NET framework, don’t reference libraries that don’t provide source code, provide full source code for use by the developers…

  21. Garret Besser says:

    Funny that we are finding ourselves in this exact position with absolutely no time to dedicate to this much needed starter kit.

    there are quite a few already up there – but will take at least a month to build on top of it to customize and add the fxns it doesn’t have.

    i deffinitely think it is a good idea.

    with whidbey you could use the interanet site as a good jumpstart

  22. David says:

    I would be interesed to see the final results very much,

    SQL Im assuming would be the data storage methodology with this, which would be nice from a migration standpoint (getting existing data out of current HD tracking)

    PRi 1 c, j, b

    PRI 2 D

    Pri 3, H

    k – Would be nice for Password resets

    G – would just be a very interesting feature to see but might be unweildy to use in larger orginizations (over 5000 employees)

    Looking forward to seeing this if ya’all go ahead with it.

  23. MattL says:

    Reiterating what many have said, I agree that it’s a great idea if, for not other reason, it’s an excellent starting point for small- to medium-sized companies that have an IT staff, in-house developers, but not the expertise to home-grow the whole system from scratch.

    In terms of features:

    I think (A & B) would be the least valuable, based on my experience with a number of different-sized organizations. Large companies (> 1000 desktops) generally have some asset or inventory package already (if not department), whom I’m certain wouldn’t appreciate the overlap — it would probably even create resistance. Very small companies (< 50 desktops) generally have a good handle on their available equipment (through Excel spreadsheets or Access databases) and this would probably be overkill considering the development time.

    An extensible (C) is definitely the sweet spot. Most low-end Helpdesk packages are terrible, and the high-end ones are too costly for many companies. I have personally been involved in writing a number of these in-house systems, and have been an architect on the Liberum (open source, ASP-based Helpdesk) Project for years. It would be great to get a flexible model with a Microsoft-christened pattern. (D) should be directly tied to (C), so that backtracking can be done in reporting.

    (E) and (F) may, again, stray into other departments’ responsibilities.

    (K) would be great, having also written one of these with my team. The headaches with the ADS Query Provider will haunt me for years to come. 🙂 This should also incorporate Identity Integration Server, or at least be pluggable such that things like password changes can be propagated to systems with proprietary user tables.

    And, yes, please deliver by next Friday.

    Pri1: c, d, f, j, k

    Pri2: e, h, i

    Pri3: a, b, g

  24. Will Bradley says:

    That’s the best freaking idea I’ve ever heard. After all, that’s what Sharepoint/Portal is supposed to be, right? Something to give the Portal a more company-centric, AD-integrated view (Help Desk is what I’m most interested in) would be -awesome-.

  25. Eric curtis says:

    You Rock that is a great Idea.  Anything that helps IT is always a great idea.    You Rock dude.   I hope to see something like this.  In fact, I was searching the web for a tool that does just that.   Please let me know if you create this.

    Love the idea of the starter kit.  I would love to see more starter kits in the Windows Forms arena

  26. Luke says:

    Did this ever take off?  I’ve been searching for days for ideas and help on creating an internal phone list (from AD), a helpdesk (for AD users), – this is a great idea but I see your blog post is like 3 years ago…..does it really take this long to develop =D

    All the best, if this is available please let me know where (or when if it’s still in "production")