gregcons logo    Services

Contact Us


We Are:
  Kate (blog)


What is Mentoring

  • customized attention to issues that may not be addressed in the traditional classroom environment.
  • a dramatic and permanent increase in productivity through tailored training, coaching, and inspiration
  • tremendous employee satisfaction through being provided something worth far more than taking a course or attending a conference
  • temporary capability in a new technology without having to hire more full time staff
  • permanent capability in a new technology by teaching it to your existing staff while incorporating it into your existing code

We can bring your team into a new area -- moving to .NET or from .NET to native code, upgrading to the latest Visual Studio, using Visual Studio Online for source control and Application Lifecycle Management, or getting ready for the next release. We can introduce you to a new-to-your-team technology like web services, XML, Json, or WPF. We can get you past a blockage -- one thing that you don’t know how to do that you’ll only need to do once. Or we can help you get past a temporary spike of work that needs more people; we'll pitch in during an intense time, then you'll go back to normal when the spike is past.

How does it work?

You form a relationship with a single mentor, who is available by phone, email, and instant messenger between visits to your site. Most of our clients arrange regular visits - half a day a week is popular, but you might prefer longer visits or slightly less frequent ones. On some visits, your mentor presents some prepared material that you have agreed on together, teaching a particular topic of interest. On others, your developers present stumbling blocks or problems that have arisen since the last visit and the mentor helps to solve them with the group, in the process teaching your developers how to solve that sort of problem. Another time the mentor might lead the team through a design or architecture process, lead a code review, facilitate a requirements meeting, or settle technical disagreements. Still another time, the mentor might spend half a day writing a "proof of concept" application that demonstrates how to accomplish a specific task, so that your staff can incorporate a new technology into your existing application. It all depends on what your team needs at that particular time.



Every client's training needs are different. For some, it's enough to work with us for a while and watch how we tackle things. Others want book recommendations, and we're happy to provide suggestions for instructional or reference books. Still others prefer to be trained in a structured environment.

One of our founding partners, Kate Gregory, is an experienced trainer for several training organizations. She is the public face of the company and delivers standup training. Kate is highly regarded in the training community and speaks at conferences all over the world. She is also a founding member of the planning committee for CppCon, born as the largest C++ conference ever in 2014 with over 100 sessions, and continuing to grow every year. If you need a traditional instructor-led course, or an online training course, we can meet with you to discuss your needs and recommend the best approach. We can also arrange for short term one-on-one training and mentoring at your site.

Since 2010 Kate has been delivering courses online for Pluralsight. Her courses have reached hundreds of thousands of students and she adds new courses regularly - primarily on C++ and Visual Studio.



Before there was a World Wide Web, before it was possible to buy Internet access, Gregory Consulting was writing software and helping others to be better software developers. We've embraced the Internet and Internet programming, but haven't left Windows programming behind. (We have cheerfully abandoned most other operating systems, though we're doing some mobile development now to supplement desktop applications.) We build Windows applications, web applications, web services (for application-to-application integration,) Windows services, and SQL Reporting solutions. It's important to us to produce quality software that meets deadlines, budgets, and requirements. We work in C++, Visual Basic.NET, C#, C++/CLI, C++/CX and various scripting languages. We take advantage of standards and use frameworks and libraries to reduce costs while providing a more robust solution than re-inventing the wheel would provide.

Programming fits into all aspects of our work. Our technical writing is on computer programming topics with working programs as examples. We take on contracts to produce Windows and Web applications, or to collaborate on them.

Before you engage us for a programming project, you should understand our development process. We have a strong preference for fixed-price bids based on well-written and well-understood requirements. You'll know just what you're spending; we'll know just what we're agreeing to create. We'll all be happy!

Some of the programming languages we are currently using include:

  • C++ including MFC, C++/CLI and C++/CX, with an emphasis on ISO Standard C++ wherever possible, and a Modern C++ approach
  • Visual Basic.NET and C# with all the power of the .NET Framework
  • Interop techniques to connect native code and managed code with minimal effort

If you need some software built (or the software you have now changed) and you think we might be a good fit, please do get in touch. There's no charge to talk about the possibilities, and we would love to help.