Category Archives: Community
HDLUG Meeting – 04/06/10 – Recap
I attended the April Houston Dynamic Languages User Group Meeting this passed Tuesday. Cameron Laird (PhaseIT) gave a great talk on the Python language in general.
High Points Gleaned
When Google first released it’s app engine, Python was the exposed language.
Python is the language of BitTorrent, YouTube, Reddit and more.
It fully interoperates with Windows Forms, WPF, Silverlight, ASP.NET and Powershell
Several implementations of Python
- CPython (C)
- IronPython (Microsoft)
- Jython (Java)
Embedding is the exposure of an application’s internals (objects)
Python is an Extension Language
Links
- Python Programming Language – Official Website
- Book: IronPython in Action
- Houston Python Enthusiasts
- How to Write a Spelling Corrector
Announcements
New Twitter account – http://twitter.com/houdynlang
HDNUG Meeting – 02/11/10 – Recap
I attended the February Houston .NET User Group meeting. There was a great turnout (80-90) considering how bad the weather was. The sponsor was New Horizons, an independent IT training company.
Announcements
Some people from TechSmith will be here for next month’s meeting
Meeting #100 is coming up quick. There will possibly be big prizes
Main Presentation
Markus Egger from EPS Software did a great presentation on C# 4.0 focusing mainly on the Dynamic aspects.
Types of .NET Lanuages
- Traditional – C#, VB.NET
- Functional – F# — Book recommendation: Expert F#
- Dynamic – IronPython, IronRuby
Dynamic (Python, Ruby, JavaScript) – Advantages
- Simple
- Implicitly typed
- No compilation
One of the main disadvantages of dynamic languages is the lack of Intellisense support.
Static (C#, VB.NET) languages – Advantages
- Performant
- Intelligent tools
- Better scaling
DLR – Dynamic Language Runtime
DynamicObject class
REST
Named and Optional Parameters
Improved COM Support
–
Markus Egger’s Information
- Presentation and Demos for C# 4.0 Dynamic Programming
- Email – MEgger@eps-software.com
- Twitter – @MarkusEgger
- Blog – http://www.MarkusEgger.com/blog
–
–
^..^
Houston C# SIG Meeting – 01/19/10 – Recap
A couple of weeks ago I attended the Houston C# SIG meeting. Ken Getz did presentations on both Silverlight and LINQ to Objects.
Silverlight
Ken defined Silverlight as a programmable browser plugin that supports animations, vector graphics and videos.
Some features include –
- Works on Mac/Linux/Windows
- Client-side technologies
- Uses XAML for declarative design
- Expression Blend – best software to use for Silverlight/XAML design
- Visual Studio 2010 includes the components needed to build Silverlight apps out of the box
The following site allows you to verify if your pc is able to run Silverlight applications http://www.microsoft.com/silverlight/get-started/install/default.aspx
Silverlight is basically an HTML page with an <object> tag.
–
LINQ to Objects
There are several LINQ providers –
- Objects
- SQL
- DataSets
- XML
- Entities
Example Usage
string[] geeks = { “Sheldon”, “Leonard”, “Howard”, “Raj”};
var myQuery = from g in geeks
orderby g
select g;
Console.WriteLine(“My Favorite Geeks”);
foreach (var x in myQuery)
{
Console.WriteLine(x);
}
Ken provided a very informative presentation on LINQ to Objects and I am glad I was able to catch it.
–
^..^
HDNUG – January 2010 Meeting – Recap
I attended the January 2010 Houston .NET User Group meeting and there was a great turnout (about 100 people in attendance) to see Rob Vettor speak on Visual Studio 2010.
Announcements
2010 Officers
- President – John Hellman
- Vice President – J Sawyer
- Treasurer – Michael Steinberg
- Secretary – Justin ???
2010 Houston Techfest – Saturday, 10/09/2010 @ University of Houston
Markus Egger will be the speaker at the February 2010 meeting
New and long awaited website design at http://www.hdnug.org
Zain Naboulsi announced the Windows 7 "Windows @ Work" Article Contest. A contest that he is putting on in conjunction with The Code Project.
Submit a great article explaining how you built an app for Windows 7 – complete with code – and if yours is the highest rated article by both The Code Project community and our judges, you could win a fully loaded HP Touchsmart tx2z Notebook!
Visual Studio 2010 is slated for release 4/22/2010
–
The main presentation was given by Rob Vettor. He talked about Visual Studio 2010 and the history of how it came about as well as some of the new features.
Some New and Extended Features in VS 2010
- CLR 4.0
- Cloud Computing
- Parallel Computing
- Visual F#
- VS UI is built in WPF
- DLR – Dynamic Language Runtime
- MEF – Managed Extensibility Framework (for building plugins for VS)
- All the normal languages have been extended (C#, VB.NET, AJAX, etc)
- Entity Framework 4.0
- Multi-Targeting – Capability of dealing with previous versions of the Framework (2.0+)
Sku Versions
The number of Visual Studio versions has been reduced. Now there are only 4 main skus to remember
Here is a comparison of the old sku setup to the new sku setup.
Below is what is included in each of the new skus.
Roadmap
- Beta 1 has come and gone
- Beta 2 is now available
- March 2010 – Release Candidate
- April 22/2010 – Official Release
Rob gave a great high-level overview of what is coming in Visual Studio 2010. As always, there were some good magazines given away.
–
Until next month…
^..^
Refresh Houston Event – Matt Mullenweg
I attended my first ever Refresh Houston event last night. The event was located at the new Westchase Technology Center. Matt Mullenweg, Lead Developer of the WordPress blogging platform, gave a great talk and answered numerous questions from attendees.
I was planning to do a recap, but there are a couple of people that have done such a good job of it…why repeat?
Matt Mullenweg Refreshed Houston – PopLabs
Live Blogging: Matt Mullenweg at Refresh Houston – Colin Lowenberg
@GoPopLabs posted an Animoto slideshow of the event
–
My favorite quote from Matt Mullenweg (@photomatt)
Google is the World’s most complex and elegant machine behind the World’s simplest UI
–
I hope to attend another Refresh Houston event in the near future as it was a great flow of information.
–
^..^
SQL Pass 2009 Recaps and Live Blogs
For people (like myself) who could not be present at SQL Pass 2009, I have listed some great recaps and live blogs below.
Michelle Ufford – Live Blog Posts
- Live Blogging: Keynote at PASS, Day 1
- Live Blogging: Keynote at PASS, Day 2
- Live Blogging: Keynote at PASS, Day 3
Pinal Dave – Recaps
- SQL PASS Summit, Seattle 2009 – Day 1
- SQL PASS Summit, Seattle 2009 – Day 2
- SQL PASS Summit, Seattle 2009 – Day 3
- SQL PASS Summit, Seattle 2009 – Day 4
Brent Ozar – Live Blog posts
Jack Corbett – Daily Recaps
- My First PASS Experiences
- Let the Learning Begin
- PASS Summit Day 2 – What More Can I Learn
- PASS Summit Day 3 – Brain on Overload
- PASS Summit 2009 – Wrap-up – What’s the Value?
Denny Cherry – Recap
–
Until next time…
HDNUG – October/09 Meeting – Recap
I attended the Houston .NET User Group October ’09 meeting last night. There was a good turnout of about 75-85 people in attendance.
Announcements -
- Next month Zain Naboulsi will be presenting on Windows 7 for developers
- There is an upcoming ASP.NET User Group that will likely be on the 4th Tuesday of each month – no dates set yet
Main topic -

Claudio Lassala gave a great talk titled Be a Professional Developer and Write Clean Code. Below are some of the points covered.
- What is clean code? Elegant and efficient, can be read and enhanced, simple and direct, etc…
- Computers do not care what your code looks like
- Name variables so that you don’t need comments
Instead of –
//Setting employee’s first name
string field1 = “Rhonda” ;
Use this –
string employeeFirstName = “Rhonda”;
- If you have source control, there is no reason to keep code commented
- NDepend – a good tool that provides metrics for your code
- Functions should do one thing and do it well
- Vertical Distance – Declare variables close to where they are used. There is no need to declare all variables at the top of the program.
Presentation Materials for Be a Professional Developer and Write Clean Code
There were a lot more great points, but I had to leave before Claudio was finished. He did a great job of explaining how bad code should be rewritten.
Looking for a user group meeting to attend? Check out my Houston Tech Groups and Events page.
–
Until next time…
^..^
Houston TechFest 2009 – Recap

I attended the Houston TechFest last weekend and I have to say it was a great turnout. According to the web site there were 858 people in attendance. There were 14 tracks containing 70+ sessions.
–
Below are the sessions that I attended and some notes I took along the way.
What’s New In Silverlight 3.0

Presenter: Todd Anglin
This presentation gave a great high-level explanation of Silverlight 3.0 and Rich Internet Applications.
Silverlight is not (nor will be anytime soon) available for the iPhone. Apple does not allow this type of plugin.
High Points of Silverlight 3.0
- GPU Acceleration
- Out of Browser (Fit Client)
- Search Engine Optimization (SEO)
- Assembly Caching
- Validation Templates
- SaveFileDialog
- Cached Composition
- Network Monitoring
- 3-D Support
What’s New in Silverlight 3.0 – Slides and Demo Code
Introduction to iPhone Development

Presenter: Ben Scheirman
This presentation covered the requirements for developing on the iPhone as well as some syntax and frameworks.
Requirements
- A Mac
- X-Code (free)
- iPhone SDK (free – limited to simulator)
- iPhone Developer Program ($99)
Language – Objective C
Based on C, Dynamic, Object Oriented, Powerful
Ben provided a great primer on Objective C. I have to say, it is quite different from any syntax I have ever encountered.
[photo setCaption : @"Day at the beach."];
NSString* caption = [photo caption];
Some of the topics touched on in the primer
- Multi-Input
- Accessors
- Memory Management
- Header Files
- Implementation Files
- Categories (like extension methods)
- Key Value Coding (like reflection)
Frameworks and Libs
- Cocoa Touch
- AddressBook
- Camera
- Accelerometer – Tilt/Gravity
- Magnetometer – Direction
- MapKit – Embedded maps
- CoreLocation – GPS
- CoreGraphics – High level graphics
- CoreAnimations – High level animations
- OpenGL ES – 3D graphics
Introduction to iPhone Development – Slides and Demo Code
Evolve Your Code Using Extension Methods, Fluent Interfaces and Expressions
![]()
Presenter: Jonathan Birkholz
This presentation thoroughly covered the topics of Extension Methods, Lambda Expressions and Fluent Interfaces.
Points explored
- Extension Methods – Methods added to existing types. They are static methods, but called as if they were instance methods.
- Lambda Expressions – Anonymous functions that can contain expressions and statements.
- Expression Trees – Representation of language level code in the form of data.
- Expression Tree Visualizer – working implementation of a visualizer that can be run inside the Visual Studio debugger to view the contents of an expression tree.
- Fluent Interfaces – Way of implementing an object oriented API (DSL) in a way that provides more readable code.
- Single Responsibility Principle – A class should have 1 and only 1 reason to change.
Tools discussed
- StructureMap – Dependancy Injection/Inversion of Control tool
- Fluent nHibernate – Fluent, XML-less, compile safe, automated, convention-based mappings for NHibernate.
- AutoMapper – A convention-based object-object mapper.
- NBuilder – Tool for rapidly creating test data. I am really interested in this tool…
Evolve Your Code – Slides and Demo Code
Developer <T>: Utilizing .Net Generics to Write Better Code
![]()
Presenter: Shawn Weisfeld
This presentation provided a great overview of .NET Generics.
Generics are basically type-safe data structures that do not commit to a data type. This feature was introduced in .NET Framework 2.0/Visual Studio 2005.
Other points covered
- Generic Contraints
- Generic Lists
- Generic Structs
- Generic Guidelines
- Performance
Resources provided
- Teach Yourself Visual C# 2010 in 24 Hours
- An Introduction to C# Generics
- Professional .NET 2.0 Generics
Utilizing .NET Generics to Write Better Code – Slides and Demo Code
–
Materials for all the sessions are being posted to the TechFest 2009 Content site.
The 2009 Houston TechFest was a great day of learning and I am already looking forward to next year. As always, the swag was pretty nice too.
–
Until next time…
Alt.NET Open Spaces Videos/Podcasts

The idea of Open Spaces is that a large group meets and constructs the agenda and schedule during the meeting itself.
Alex Hung [@AlexHung] has shared an awesome collection of Alt.NET Open Spaces videos. I have watched a couple so far and have picked up a lot of information.
On his site HighOnCoding, Mohammad Azam [@AzamSharp] has posted several podcasts of presentations that took place at the Houston Alt.NET Open Spaces this passed April.
- Houston ALT.NET Open Spaces Deployment Automation
- Houston ALT.NET Open Spaces Why Blog and Open Source?
- Houston ALT.NET Open Spaces Behavior Driven Development
- Houston ALT.NET Open Spaces Fubu MVC
Lastly, there is a great post on the Seattle Alt.NET Open Spaces Conference from Scott Hanselman [@SHanselman]. He gives great definitions of Open Spaces. I think it is a great concept for learning.
–
Until next time…
C# SIG Meeting – 07/21/2009 – Recap
The Beginning C# SIG topic was the Entity Framework. SIG leader Bobby Schaffer gave a good presentation on the benefits of using the Entity Framework to interface with data.
The C# SIG presenter was Claudio Lassala and his topic was Beyond the Basic Concepts of OOP. He provided some great information and had some great demos using the SOLID Principles.
Claudio’s Information
- Blog: http://ClaudioLassala.spaces.live.com
- Email: Claudio@eps-software.com
- Twitter: http://Twitter.com/claudiolassala
High-level Presentation Summary

Core Concepts
S.O.L.I.D. Principles
- Single Responsibility Principle (SRP) – A class should have only one reason to change.
- Open/Closed Principle (OCP) – You should be able to extend the behavior of a class without having to modify it.
- Liskov Substitution Principle (LSP) – Derived classes must be substitutable for their base classes
- Interface Segregation Principle (ISP) – Make fine-grained interfaces that are client specific.
- Dependency Inversion Principle (DIP) – Depend on abstractions not concretions.
Presentation Slides and Demo Code
–
Until next time…



















