Skip to main content
logo

SkillsUSA

Go Search
Home
4Square
About
Engineers
SkillsUSA
  

4Square > SkillsUSA

 SkillsUSA 2011

The Challenge

The contest this year was to build an application to simulate a traffic light managed intersection.

Contestants were provided with some images of traffic signals and given the instructions to write an Windows Forms application in VB.net or C# the would allow the light timing to be changed to manage traffic and support pedestrian crossing with a slight delay to allow the cycle to complete and an emergency override to turn all lights red for an emergency vehicle passing.

Sample Solution

To help students and their teachers better understand the way to approach the problem I've provided a sample solution via video at ScreenCast.Com http://www.screencast.com/t/Fq5cPviFT 

Keep in mind that there is no 'right solution', however consice, readable code is a great start.

Evaluation Method

Contestants were evaluated by how well they thought through their solution, how well it was implemented and documented and of course its functionality. Part of the instructions included a discussion of naming conventions, handling errors and exceptions and writing concise code.

As the contest judge I can honestly say the competition was terrific. I congratulate the contestants and I am happy to recommend any one of them for an entry level or intern programming job. Nice job guys!

This talented crew made it very difficult to evaluate the results because each contestant did a credible job. The final list was extremely close. Very minor flaws separated the field.

Things of note this year

I saw much better use of naming conventions, several contestants demonstrated great skill with C# and use of advanced techniques including arrays, image lists, dictionary objects and Enumerated constants. Several students also polished up their presentation with their own artwork, About Boxes and Splash Screens.

There were a few applications that had minor flaws including not handling the input variable types or handling it awkwardly, several handled the value with a ComboBox eliminating the need to validate at all or the failure to provide the pedestrian crossing option, cycle time change system etc. (How you think!)

Most if not all the contestants wrote a lot of unnecessary code to manage state and timing. This is easily attributed to their experience level. I provided a video and sample application demonstrating concise and maintainable solution based on custom user controls.

Overall I am very impressed with h skills and dedication of this year’s contestants.  

Copies of the sample solution and video are available on request

Pat Tormey PE
Microsoft MVP

PTormey@4square.net

 

  

 SkliisUSA 2010 Contest

 SkillsUSA 2009 The Bowling Challange

 

    This Assignment is to show what you know about programming.

    It is very hard so don’t get discouraged. It's supposed to be hard.. It's a test.

     

    The Task is to write a program to allow an untrained user to calculate and display bowling scores. You should assume 3 or 4  people bowling 2 or 3 strings .

     A string is a set of 10 Frames, a typical game.

     

    You should try to make it look like the sample bowling score card you are given.

    It should do all the math including current score and optionally the bowlers  average scores  for each game

     

    This assignment is probably too hard to complete in the time allowed

    You will be graded on how well you have thought the problem out and how well organized you code is.. NOT on How complete the project is. So Comment your code..

     

    And it is acceptable  to  have a button that says Recalculate and the code is just a comment explaining how you would do that with a message box that say "incomplete"

     

    I am very fussy that the application looks good and is easy to use. It does not have to be "pretty" but the buttons should be aligned and text and layout attractive.

     

     

    Pay Attention to How Strikes and Spares are handled

    It should be easy to use.. The <TAB> key should take you to the next thing.

    ToolTips are required. The Americans with Disabilities Act requires us to use ToolTips because they can assist people with vision problems.

    Comment your code (I said that twice now!)

     

    The big issues I see are

    The layout of the screen might be too wide for the computer screen

    You have to handle the Strikes and Spares with different symbols and handle the math correctly

    You probably need to store the data someplace.

    Storing data IS NOT REQUIRED but It's a skill you really should have

    You can use a database

    You can use a text file (Comma Delimited?)

    You can use XML

    You can wing it your own way 

     

    NOTE: The Articles provided are not tested. You do not have to use them. They are just reference materials to help you get started.

     

    The Following Artciles were printed Since not Web Access was permitted..

    http://oncampus.richmond.edu/academics/education/projects/webunits/math/bowling.html

     

    http://www.bowling2u.com/trivia/game/scoring.asp 

     

     

 Sills USA 2008

Once again Foursquare Solutions has been selected to design and administer the SKILLS USA Massachusetts programming contest. This will be our 3rd year of competition and promises to be the best yet.

To assist student and teachers in understanding this competition I am posting previous years instructions to the students. Please understand I know these assignments are difficult.. Most students do not finish in the time allowed.. This is by design. The contest is testing the student's organization and understanding of the concepts.

As a parent and a professional software developer I am overwhelmed by the energy and dedication that the students bring to this event.

However many of these hard working kids are disadvantaged in that their curriculum is still using older and harder technologies. To help release the energy and creativity for this year’s event I am recommending that all participants and their instructors read VB 2005 Jumpstart Chapter 6 from the Required Reading list to the right.

I’m also recommending that students down load the free copy of VB Express 2008 Download and SQL Express Download.

Here is the 2008 Assignment

For 2008 the SkillsUSA competition revolved around using a Bar Code Scanner to look up items in a provided database (SQL Express or MS Access) and add them to a Grocery list.

The database consisted of a couple of hundred sample records from a commercial UPC Bar Code database, and a pile of labels clipped from my own cupboard. UPC is the Universal Product Code seen on most grocery store product labels.

The task was to build a system that would allow a home user to scan in the UPC from the label and add that item to a grocery list. Then adjust the quantity or delete items from the list. And finally print the list to the screen for review.

A Bar Code scanner device was available for testing.

 

Pat Tormey

PTormey@4square.net

 Skills USA 2007

 

Skills USA VB Contest 2007

 

Task
For the SkillsUSA contest for 2007 Pat Tormey assigned the task of imagining a program to collect all the substantive information from a file system directory and save it to a file or a database.  The concept is that the end user wants to catalog all the files on a series of CDs or DVD, so they can later search and find any file from any CD or DVD.

Objective
The objective is to write an application that will have a form to allow a user to enter the drive letter or directory name, and a textbox that describes the source of the file (CD Name for example) and then push a button to start the process of collecting file names, dates and sizes then write that information with the description  to a disc as a flat (text) file or a simple database table.

The application must cycle thru all subfolders (directories) and return to the main form to accept another drive to search and append its contents to the same file or database with the new location description.

Hints Provided
Contestants were give a sample of code in VB and VB .Net that would collect the information from the file system, sample code that would write text to a file, and the definition of a recursive subroutine. i.e. a routine can call itself as many times as needed to complete a task.

 Skills USA 2006

 

Skills USA Massachusetts
Visual Basic Competition

Overview
This competition is to design an easy to use, single user, desktop Visual Basic application.

 Competitors will be expected to design an attractive, desktop application in Visual Basic Version 6 or any version of VB.Net that will allow an unsophisticated end user to add edit and delete records of a database consisting to two related tables.

 While it is common for applications in VB to use 3rd party tools for data grids and assistance in the design process, no 3rd party tools are allowed for this competition.

 All work must be original.

 Task Expectations

Competitors will be given a specific task that will require entering new data into a Parent table and then adding child records to a linked Child table.

 Competitors can expect to perform sums and averages on the data.

 For this competition a Database will be provided in MS Access 2003 and SQL Express but the competitor is free to use any data source of their own design.

 The Database will be designed to hold Parent Records (for example Customers List) and related Child Records (for example Customer Orders).

The exact nature of the task will be explained at the start of the competition.

Judging

The Primary Criteria for this contest is an attractive easy to use interface. Special care must be taken to ensure that an unskilled user with a working knowledge of MS Windows will be able to find and edit the data with the least amount of complications.

Buttons and menus should be descriptive, large and easy to read with tool tips to assist the user. Only standard icons, colors and fonts are required. Do not distract from a good design with elaborate colors and graphics.

 The Secondary Criteria is design of the application itself. Code should be concise and naming conventions clear and consistent.

 The Third Criteria is the completeness of the application. This application will probably take more time that the competition allows. Competitors should design their application with some functionality “stubbed out” with a short descriptive comment in case they do not get to complete the full application.

 For example a Function to delete a record might have a button the simply pops up a message box that says “Delete Child Record”

 For this competition it is more important to show good design sense and clear concise code than to complete the application itself

 
About the Judge

 Pat Tormey BS, MS, PE is a Microsoft Certified Developer in C# and Visual Basic and is prominent in the Microsoft Developer community.

 
 

 Notes to Contestants

 

  

This contest is designed to be hard and most students will not complete the assignment in the time allowed. That is normal and expected.

 

Students should be using the latest version for Visual Studio, which is available for free see http://www.microsoft.com/express/

 

Students not using the current version will be at a disadvantage as newer versions are just easier to use..  Their work will be accepted and evaluated as long as it's Visual Basic. (There is some discussion of going to C# and that is subject to SkillsUSA rules.) 

 

The contestants are expected to use great care in documenting what they are trying to do. It is perfectly acceptable to 'stub out' code with a MessageBox.

 

Do not waste time with details or fancy artwork. Make sure your work is clean, organized and (didn't I already say this) well documented.

 

I'm looking for ease of use and a consistent programming style (naming conventions)

 

Good Luck

Pat Tormey PE