Monthly Archives: January 2010

Vermont IT Jobs: Java Developers at the fast growing Dealer.com

Dealer.com is one of Vermont’s great IT success stories and a very cool place to work.

They are looking to fill a few Java developer positions and are also looking for tech leads. There are some great opportunities for the right people.

Here are the specific positions:

Java Developer:

http://jobs-dealer.icims.com/jobs/1157/job

Senior Java Developer:

http://jobs-dealer.icims.com/jobs/1156/job

Technical Lead:

http://jobs-dealer.icims.com/jobs/1155/job

There are also about 20 other positions open at Dealer.com.

Vermont IT Jobs: (Colorado or telecommute) Sr .NET Developer

Sr. Software Developer position

Meeting Sciences, Inc. is looking for a Sr. Software Developer interested in working on exciting new, and highly unique, solutions in the areas of communication,  collaboration and business intelligence. Deployed as a SaaS (utilizing cloud computing), our solutions are implemented using state‐of‐the art development tools and Agile development methodologies.

We are a unique company in that the highly successful consulting side of our business has been operating globally for 15 years with clients such as Oracle, Cisco, ING, American Express, GE, ExxonMobil, Leo Burnett, Ralph Lauren, and HP, to name just a few, but the software development side of our business is “early‐stage.” Meeting Sciences’ primary product offering on a go‐forward basis is a unique – and already in demand – software product currently under development (targeted for FCS in Q2/2010). The person who fills this position will be joining a small but highly skilled and experienced group of software developers located primarily in Colorado, but with team members located across the country.

The Sr. Software Developer position can be full or part‐time, however currently all positions are 1099 and require a minimum commitment of 20 hours per week. All positions earn equity. Full‐time positions will convert to W‐2 in Q2/2010. Currently we work in a virtual environment, so you must have an environment at home suitable to productive work. All necessary software development tools will be provided by Meeting Sciences.

Requirements
 5+ yr. professional development experience
 Ability to work independently with limited supervision
 Excellent team member and communication skills, able to work effectively in a highly
collaborative virtual environment.
 Proven ability to deliver designs and implementation at module level that meet requirements.
 References

Mandatory experience
 .Net 3.5
 C# 3.0
 OO analysis and design
 Unit testing framework
 Agile development

Desired skills (must possess one or more)
 WCF web services
 ASP.Net server‐side development and large scale deployment
 Silverlight 3
 Windows Services implementation
 SQL‐Server
 LINQ
 SharePoint solution development

If interested and qualified, please send your resume or CV and a cover letter to Russ Panneton, managing
Software Engineer at rpanneton@meetingsciences.com

Passing around an ObjectContext: by value or reference?

<Refresher>

When you pass parameters in VB, you use the ByVal and ByRef keyworks. The default in VB is ByRef with a nuance (see ByRef Parameters Passed by Value)  In C#, no keyword means by value and alternatively, you use the ref keyword to pass a reference.

The key difference is that when you pass a variable by value , you are just passing a copy. The originating variable cannot be replaced.

When passing by reference, you are working with the actual variable and can replace it.

The part that frequently evades developers is that if the value is a reference type (i.e. does not contain it’s values directly compared to, for example, an int which does) you can modify those related values whether you pass by reference or by value.

</Refresher>

Now let’s look at this with respect to an ObjectContext being passed as a parameter. An ObjectContext has it’s own values but also has references to other values (e.g. the ObjectStateEntry types that it maintains to keep track of entities).

Whether you pass the context by value or reference, the entities that the context is tracking will be impacted when you execute queries or call SaveChanges with the context.

When passing it by value you won’t replace the context, e.g, passedinContext=new MyEntities() won’t affect the originating context.

When passing it by ref, you CAN replace the context e.g., passedinContext=new MyEntities() will reinstantiate the originating context. And if you replace the context, you will lose ALL of the state information for the currently tracked entities. Those entities will be orphaned – just sitting in memory with nobody tracking them and if you do reattach them to the new instance of the context, they will all be unchanged.

That’s a big problem.

So unless you are trying to achieve some specific behavior, you should definitely pass byval. In fact you should define your method signature that takes the parameter to ensure that you are passing by value.

O’Reilly Webcast tomorrow, Jan 27, Top 10 Treats in EF4

Tomorrow at 10am PST/1pm EST, I’ll be presenting a live web cast for O’Reilly Media called the Top 10 Treats in Entity Framework 4. The web cast is one hour (including intro and questions). Short & sweet.

You can register at http://www.oreillynet.com/pub/e/1517.

The webcast will be recorded and available at the same link approximately one week later.

Tour the Top 10 Treats in Entity Framework 4

DateWednesday, January 27, 2010

Time 10am PT, San Francisco
6pm – London | 1pm – New York | Thu, Jan 28th at 5am – Sydney | Thu, Jan 28th at 3am – Tokyo | Thu, Jan 28th at 2am – Beijing | 10:30pm – Mumbai

Presented by: Julia Lerman

Duration: Approximately 60 minutes.

Cost: Free

Visual Studio 2010 and .NET 4.0 bring us a new version of ADO.NET Entity Framework, called Entity Framework 4. From the designer, to the APIs to entire new feature sets to support agile development, even former EF skeptics are getting excited about this version. There is a lot to see. In this one hour webcast, Julie Lerman, who is currently working on the 2nd edition of Programming Entity Framework, will highlight the ten most significant changes to the Entity Framework.

About Julia Lerman

Julia Lerman is the leading independent authority on the Entity Framework and has been using and teaching the technology since its inception two years ago. She is well known in the .NET community as a Microsoft MVP, ASPInsider and INETA Speaker. She is a prolific blogger, a frequent presenter at technical conferences around the world, including DevConnections and TechEd and she writes articles for many well–known technical publications.

Julia lives in Vermont where she runs the Vermont.NET User Group, was a founding board member of the Vermont Software Developers Alliance, and is a member of the Champlain College Software Engineering Advisory Board. You can read her blog at www.thedatafarm.com/blog.

Vermont IT Jobs: 4 programming jobs listed in this week’s Seven Days

  1. Norwich University: Web App Developer with FLash/Flex experience
  2. ARD: Software Developer
  3. UVM: Web Programmer in Continuing Ed – HTML, PHP, MySQL and more
  4. PKC: Sr. .NET Desktop Software Engineer – C# & WPF required;  WCF, XML, SQL, version control and CSLA helpful

Plus two support jobs:

  1. Pcc.com is looking for a Software Support Specialist
  2. Middlebury College: Sr. Technology Specialiast (aka Help Desk)

See sevendaysvt.com/classifieds for more details.

Vermont IT Jobs: Web & Database Programmer Analyst in White River Junction

clip_image002

RESOURCE SYSTEMS GROUP is a multi-disciplinary, employee-owned consulting firm providing insightful consulting services for the planning, analysis, and management of transportation, natural resources, technology, and business. We design sophisticated approaches to collecting, modeling, and communicating meaningful, nuanced data that organizations and governments at every level can use to make informed policy and operational decisions. More than just analysts, scientists, and engineers, we’re communicators. Our study results are clear, concise, and directly applicable to a client’s particular questions and challenges. Recognized as one of the “Best Places to Work in Vermont” for the 4th consecutive year and named as one of the “Best Workplaces for Commuters”, RSG employees enjoy excellent benefits, flexible hours, a commitment to creating a sustainable workplace, and opportunities for advancement. We are an equal-opportunity/affirmative action employer. Please visit www.rsginc.com for more information on Resource Systems Group.

Associate – Programmer/Analyst (Web & Database)

White River Junction, VT or Salt Lake City, UT

This newly-created position is part of the software development group of the Technology Solutions Practice.  General responsibilities include developing and maintaining diverse web applications for RSG’s business and research-oriented projects, as well as assisting in the design, coding, and testing of technical solutions. The ideal candidate will possess outstanding computer, analytical and quantitative skills and must demonstrate flexibility in day-to-day work. In addition, we require the following qualifications:

  • Bachelor’s degree in computer science, engineering, math or similarly  quantitative field of study
  • 1 to 2 years experience in software development methodologies
  • Proficient in .NET or similar enterprise framework
  • Knowledge of database structures and basic relational database concepts (MS SQL)
  • Demonstrates basic knowledge of object and component methodology and technology
  • Possesses basic knowledge of classes, components, objects, and interfaces
  • Experience with desktop, client/server, and Internet applications and architectures
  • Experience with web design usability, HTML, and client-side scripting a plus
  • Activity in open source development a plus

Please submit resume and cover letter to the Director of Human Resources via our website employment page at http://www.rsginc.com/home/jobs/.

Some Visual Studio tips I picked up recently

Earlier this month, Rob Hale presented at the Vermont.NET User Group on what he learned at PDC. There was a lot of great information; but oddly, two tiny little Visual Studio features stood out for me.

One is not even new to VS2010.

Recent Project Tricks on Start Page

There are a zillion new productivity features in VS2010 but this one had escaped me (and surely a few thousand others as well).

In VS2008, I modified my startup settings so that I didn’t have to look at the start page. I will absolutely leave it in place in VS2010.

I really like the way the recent projects are displayed on the VS2010 Start Page, but did you know that you can control how those projects are displayed?

You can PIN projects that you want to stay on the start page and unpin them when they are  no longer necessary.

Just by hovering your mouse over to the space to the left of the project, the pin will appear and you can click it to pin the project down.

 

 

image

 

image

You can also remove projects from the list and open their containing folder right from the start page.

image

Block Selection in Code Editor

Another IDE trick Rob showed us is not even new to VS2010 – block selection – which can be used vertically.

If you hold down the alt key while dragging your mouse across and down, you can highlight text vertically.

Rob pointed out a useful example.

Say you have some repeated code, such as instantiating some objects with values, but you need to change something

Here, I have used ALT and dragged down in front of the F of FirstName. Notice the faint blue line. I could drag across and highlight text in a column if I wanted also.

image

Now I start typing to add in the ModifiedDate property.

image

Whatever I type is mirrored in all of the rows of my selected block. Really cool.

Recent Project Templates

Matt Kleinwaks brought this one up on a listserv today and I was again, surprised. This one is new to VS2010 but I had overlooked it.

Visual Studio remembers which project templates you have used recently and make it easy for you to select them.

I’ve never paid attention to the Recent Templates section much less ever clicked on it an opened it up. Matt wrote up a quick blog post about it this morning, so I’ll just point you over there if you need your eyes opened to this little feature: Avoid Template Overload in VS2010

So many tips & tricks

I have a few of the wonderful VS Tips & Tricks books written by various authors. Maybe I should place them on the kitchen counter and make a habit learn new tricks while I’m eating breakfast or lunch.

Leveraging VS2010’s Entity Data Model Designer for .NET 3.5 Projects

One of the benefits of Visual Studio’s multi-targeting is that if you are still stuck using the .NET 3.5 version of Entity Framework and are unable to move to EF4 (so sad), you can still get the new designer goodies for a .NET 3.5 project.  Remember that the designer is a VS2010 feature, not a .NET 4.0 feature.

Be sure to select .NET 3.5 when you create your project:

image

When you add the model, you’ll notice that the foreign key checkbox is disabled. FK support is not only an EF4 designer feature but it is dependent on .NET 4. But you can still get the much needed pluralization support.

 image

Once the model is created, you can take advantage of new designer features such as the complex type support. Complex tyeps existed in .NET 3.5 but the designer did not support them making it painful to take advantage of them.

image

image

Here is that complex type in an entity that was retrieved from the database.

image

Model First works too:

image

Not every new designer feature will work with an older model though.

T4 code generation won’t. You can select “Create Code Generation Item” from the context menu, but no templates will be available.

image

EF 3.5 uses a different type of code generation.

Function Import will NOT provide the nifty EF4 support for mapping stored procedure results to Complex Types:

image

Without the Foreign Key support, the model will use what’s called “Independent Associations” in other words, the same type of associations that we were limited to in .NET 3.5 where the association was dependent on the mappings.

Even though the designer has a referential constraint in the properties window, you can’t build it with this model because the foreign key is not available.

image

(With an EF4 model, you can use either Independent Associations or Foreign Key Associations.)

So if you are stuck building EF v3.5 apps (oh please please move to EF4, life will be SO much happier!), you can still get a lot of benefit from using VS2010’s designer.

Vermont IT Jobs: 10 .NET & DBA positions at Vermont Software Company

I got a note today from a recruiter trying to help a local software company hire a bunch of .NET developers and DBAs! SHe didn’t say where in Vermont. I can only Burlington or Middlebury area, but you never know…

I am working with a dynamic software company in Vermont that is looking to hire 10 people in their IT group.  This company is growing exponentially, and has a wide array of positions open, from Senior DBAs to Senior and Junior Software Engineers, and Systems Engineers and Systems Analysts.  They are looking for people with strong "hands-on" experience with .NET software development and expertise in web application and web services development. 

These are salaried, fully benefited positions, and they are looking to hire Software Engineers over the next few months. 

Please contact Jane Robitaille at jrobit@cox.net.

A snowy little jaunt in the woods

If you live in New England, you know we are getting lots of absolutely lovely soft fluffy snow. And it’s not finished yet. It hasn’t stopped snowing so we are expecting even more by the end of tomorrow.

Rich and I went skiing in our woods and up through our neighbor’s fields this afternoon.

Here are a few pictures to share.

skiing 001
Heading into the woods behind our house

 skiing 002
Winter wonderland

skiing 003
Hey, where’d my skis go? And my boots? I’m standing where I skiid yesterday. So it’s a new foot of fluff on top of a packed trail.

 

 skiing 004   skiing 005
Back up the series of hills of our neighbor’s fields after skiing down down down.

 

 skiing 006
In the woods again, ready to make another loop.