Monthly Archives: July 2013

Speaking at DevIntersection: Fall 2013, Las Vegas (& a Discount Code!)

I’ll be speaking at DevIntersection this fall in Vegas. The conference is co-located with AngleBrackets.

This is the fall conference you want to attend with the best speakers in our industry (that’s not just .NET and SQL but Javascript galore!) including Scott Guthrie, Scott Hanselman, Kimberly Tripp, John Papa, Dan Wahlin, Carl Franklin, Richard Campbell, Douglas Crockford, Michel Leroux Bustamante, Kathleen Dollard , Billy Hollis and on and on. I’m again, honored to be included.

You can get a $50 discount off of the registration using my last name (LERMAN) as a discount code. You’ll see that the speakers are all competing to get you to use their code. That’s because the speaker with the most registrations tied to their names gets a nice little reward and our conference organizers know how we *love* a good little competition! 🙂 So I jump into the fray with “ME! ME!” 🙂

Here are the talks I’ll be doing:

VS17: A Practical Look at Entity Framework in Domain Driven Architecture

Considering how your data will get persisted is not a concern with Domain Driven Design (DDD), but at some point you will have to persist your data somewhere, somehow. This session is for developers who use Entity Framework and want to know how some of the key DDD concepts such as aggregate roots, bounded contexts and value objects work out when it’s time to add in your data layer. We’ll talk about some of the struggles you may go through trying to change your perspective from data first to domain first from someone who has experienced this brain shift first hand.

VS15: Entity Framework 6 – Ninja Edition

Entity Framework 6, the first iteration of EF as an open-source project, is no longer just a pretty little unicorn. EF6 addresses many of the productivity issues that developers have requested to really make it shine as an ORM. While there are a number of new features that will be core to any EF development – such as async support, stored procedure support for code first, improved warm-up time – many of the new features are for developers who fall in the "ninja" category. In this session we’ll run through many of these features like the return of custom code first conventions, query interception and SQL logging, connection resiliency, transaction improvements and more.

VS18: Entity Framework in the Enterprise

Demoware is great for getting your head around a new topic but we’ve been seeing Entity Framework demoware for 5 years now. You’re probably not writing an application to manage your music collection or composing yet another Twitter client. You build big applications for your businesses and you need to know how to integrate Entity Framework in serious architectures. In this session, we’ll look at breaking up your models following the Domain Driven Design Bounded Context pattern, designing repositories and units of work that are relevant to EF DbContext and DbSets. You’ll also see how to build automated tests around code that involves Entity Framework, whether they be integration tests or strictly unit tests where Entity Framework seems to get in the way.

Recommended Order for Watching my Pluralsight Entity Framework Courses

I occasionally get emails asking what order would be best for watching my current Entity Framework courses.

Up through EF4, I recommended watching them in order of the date published, but with the addition of my EF5 course, that has changed.

The most important thing to keep in mind is that most of the older courses are still totally relevant. They cover critical features  of Entity Framework that have not changed (or have *barely* changed) since I published the original course.

So here is my recommendation with some relevant comments since not everyone is starting from the same place:

(BTW if you don’t have a Pluralsight subscription …but they are only $29/month for access so all 650+ courses!! …go to my contact form and shoot me an email. I’ll hook you up with a free trial so you can watch my courses (and the others, too!). But be warned, once you are lured into the goodness of Pluralsight, you’ll want to become a full-fledged subscriber! 🙂 )

Getting Started with Entity Framework 5      (Mar 2013)       4:23 (this is the longest course, the rest are around 2 hrs each)

This is the newest course. This is relevant if you are just starting with EF5 or moving from a previous version. It is an intro course which touches on a lot of topics and digs further into the most important getting started topics. Most importantly, I always point to the relevant course/module where you can dig even further when you’re ready. The course starts with an overview of what EF is and why you may want to use it. It also provides a look at what has changed since earlier version. The course then has individual modules about database first, model first & code first modeling. Since Database and Model first both use the designer, I spend more time in the database first module talking about the new designer features. For the rest of the designer features, you should look at the EF & Data Models course and Designer Supported EDM Customization, though keep in mind that both of those were done with VS2010.

The next module focuses on using the DbContext to interact with your model …understand the basic concept of querying and updating, how EF change tracks etc. It then points to the DbContext course & Querying course for more details.

The last module talks about how to fit EF into your apps …some basic architecture, some tricks and a quick look at EF in various applications (WPF, MVC and a short discussion of mobile apps). There are some more in-depth end-to-end courses that happen to use EF for the data layer in the Pluralsight library as well.

Entity Framework 4.0 By Example (Aug 2010)

This is a compilation of a series of short videos. The last three are still useful. The one on T4 templates with the designer-based model is useful if you are doing database first or model first but keep in mind that with VS2012, the default template used with the designer is now a template that generates simpler (POCO )classes and a DbContext rather than an ObjectContext. You can learn some more data-binding tricks in the 4th model and get a better understanding of POCOs in the final module.

Entity Framework 4.1 – Code First  (Jun 2011)

This will fill in many blanks from the Code First module of the EF5 course. I spend a lot of time talking about various configuration & modeling techniques and they have not changed.

Entity Framework Code First Migrations   (Mar 2012)

I touch on migrations in the EF5 course but this goes much more in-depth. Again, not much has changed since this course. The one notable change (which I pointed out in the EF5 course) is that with EF5, when you are using Automatic Migrations, the seed method gets hit every time database initialization happens, not *only* when something is migrated.

Entity Framework and Data Models   (Nov 2010)

This focuses on Database First and Model First. It uses the designer in VS2010, so some of the newer features added in VS2012 you can see in the Getting STarted with EF5 course but then the rest you can see here.

Designer Supported EDM Customization   (Jan 2011)

If you are using the designer, this is still a very important and relevant course.

Entity Framework 4.1 – DbContext  (Sep 2011)

The DbContext has not changed too dramatically since EF4.1 was released. You can fill in some blanks from the EF5 course with this one.

Querying the Entity Framework     (Feb 2011)

This courses uses the ObjectContext for querying so some things have definitely changed. If you watch it *after* the EF5 & DbContext courses, then you can pick up some querying logic/syntax tricks like grouping, navigation properties and nested queries here. I don’t cover those anywhere else. by the time you get to this course, you should be able to easily see what’s new and useful and skip the rest.

Data Layer Validation with EF 4.1+   (Feb 2012)

This is an important feature of the DbContext and has not changed with the release of EF5. You don’t want to miss this one!

Entity Framework in the Enterprise    (Sep 2012)

This is not a “features” course but one about using EF in enterprise architectures. I did this using Code First and VS2010. But given that it is about architecture & testing, not features & syntax, it does not lose its relevancy. You may even want to watch (or poke around) this course earlier and then watch it again after you’ve gone through some of the more advanced courses so that things like syntax etc will make more sense.

 

COMING UP!

What’s New in EF6: I will be creating an EF6 course that will focus on what’s new. EF6 mostly brings new advanced features. Hardly any of what’s already there will change. One notable change however is that Code First will support stored procedure mapping. In the EF5 course, I do point out some things about EF6 ..most notably in the first module.

Domain Driven Design: I’ll be co-authoring this course with Steve Smith (who has authored many of the Design Patterns courses in the Pluralsight library). You’ll notice from the EF in the Enterprise course that I’ve been getting more and more involved with DDD. So while this course will focus on DDD, not on EF, we will certainly be using EF in many examples where data access comes into play.

Work on the Entity Framework Team!

The EF team is expanding!

Here’s the first part of the job description:

Software Development Engineer in Test II Job

Date: Jul 9, 2013

Location: Redmond, WA, US

Job Category: Software Engineering: Test
Location: Redmond, WA, US
Job ID: 842421-117199
Division: Server & Tools Business

Our team, part of Windows Azure Group, is developing an open source ORM technology for .NET called Entity Framework and related tooling for Visual Studio. Our latest runtime and designer preview is recently released with Visual Studio 2013 Preview, and through NuGet. This release includes exciting new features such as great SQL Azure support, async APIs, code based conventions, and many more! On the horizon, we are considering lots of exciting areas ranging from in-memory DB support, big data, mobile local data support and others.

We are looking for incredibly dedicated and passionate engineers who can help us build a great database access technology on .NET across clouds, servers and devices. Come join us at the forefront of database access technologies, cloud computing, services world and more!

Our testing strategy is centered on building the best customer experience. We accomplish this by involving our testers in every stage of the development cycle including heavy investment in the design, prototyping and implementation phases. Because you will know how everything in the product works, you will be actively seeking ways to test it and provide feedback to the team to make it better. We are also a team that believes in leveraging key individual’s strengths and providing many opportunities for career advancement.

While this post is for an SDET position, we are in fact looking for more all-around engineers who are creative around building and ensuring the right customer experience. Our SDETs are expected to write product code as well. This is a fast paced environment (think startup culture) where process, rules and overhead is limited, in order to meet our customers’ requirements.

 

Read more and apply here

Fall conferences: DevIntersection and OreDev

Finally the spring conference season is behind me. Yes, it lasted until July 13th! (I don’t like to leave Vermont in the summer so I lumped the last bunch of commitments – DDDSummit, TechEd North America, TechEd Europe and CodeStock) into my “spring travel” plans.

The next conferences I’ll be speaking at are in the late fall.

 

DevIntersection

http://devintersection.com/

October 27-31 at MGM Grand in Las Vegas

DevIntersection is 5 conferences in one: Visual Studio, SQL, ASP.NET, Sharepoint and WIndows Azure

It is also co-located with the <anglebrackets> conference (http://anglebrackets.org/)

You can use my last name (LERMAN) for a discount when registering. Each speaker has a discount code and we are in *competition* for who gets the most registrations using their code. And yes of course, the winner is rewarded – Vegas style! 🙂 So consider the gauntlet thrown. 🙂

I’ll be presenting 3 talks:

VS17: A Practical Look at Entity Framework in Domain Driven Architecture

Considering how your data will get persisted is not a concern with Domain Driven Design (DDD), but at some point you will have to persist your data somewhere, somehow. This session is for developers who use Entity Framework and want to know how some of the key DDD concepts such as aggregate roots, bounded contexts and value objects work out when it’s time to add in your data layer. We’ll talk about some of the struggles you may go through trying to change your perspective from data first to domain first from someone who has experienced this brain shift first hand.

VS15: Entity Framework 6 – Ninja Edition

Entity Framework 6, the first iteration of EF as an open-source project, is no longer just a pretty little unicorn. EF6 addresses many of the productivity issues that developers have requested to really make it shine as an ORM. While there are a number of new features that will be core to any EF development – such as async support, stored procedure support for code first, improved warm-up time – many of the new features are for developers who fall in the "ninja" category. In this session we’ll run through many of these features like the return of custom code first conventions, query interception and SQL logging, connection resiliency, transaction improvements and more.

VS18: Entity Framework in the Enterprise

Demoware is great for getting your head around a new topic but we’ve been seeing Entity Framework demoware for 5 years now. You’re probably not writing an application to manage your music collection or composing yet another Twitter client. You build big applications for your businesses and you need to know how to integrate Entity Framework in serious architectures. In this session, we’ll look at breaking up your models following the Domain Driven Design Bounded Context pattern, designing repositories and units of work that are relevant to EF DbContext and DbSets. You’ll also see how to build automated tests around code that involves Entity Framework, whether they be integration tests or strictly unit tests where Entity Framework seems to get in the way.

 

Øredev 2013

http://oredev.org/2013

November 4-8

Malmo, Sweden

I’ll be presenting one session:

Entity Framework in Core-Business Applications that Leverage DDD

In this session we’ll look at breaking up your domain-models following the Domain Driven Design Bounded-Context pattern, splitting and defining entities and aggregates properly in the different domain models and implementing repositories and units of work that are relevant to EF DbContext and DbSets, in the data persistence infrastructure layer.

CodeStock 2013: Wow

I’m just home from attending & speaking at CodeStock 2013 in Knoxville, TN.

I’ve always heard what a great conference it is…though most of the legends were around parties at Alan Stevens’ house! After CodeStock 2012, Alan pinged me and asked me to give the keynote for the next one. I’m reluctant to leave home in the summer and …haha right….me giving a keynote! But when Alan said his idea was for me to talk not about a technology but about some of my experiences as a developer of nearly 25 years. I think at the time he had in mind something about how I had made my recent journey into Domain Driven Development. Though over year since then and with encouragement from Nathan Blevins and conversations with many, I evolved this into a talk which I titled “Disrupt Your Comfort Zone”.

When the call for abstracts was announced, I decided not to rest on my keynote laurels and submitted two abstracts on some topics I am currently passionate about sharing: one is a talk about where Entity Framework and DDD intersect (a talk that has been evolving over time from my EF in the Enterprise session) and the other is a short version of my Automated Testing for Fraidy Cats Like Me course on Pluralsight.  The intention behind the keynote and both talks was to help alleviate fear & trepidation many of us developers have about learning new, possibly daunting (ala TDD) and possibly huge (ala DDD) topics.

I was surprised that both of my session submissions were accepted. I was going to be a busy girl.

Alan, Nathan and the other organizers (Andrew May and Don Den Uyl (sounds like" “denial” 🙂 )) were very generous with their time and energy and support. I was pretty nervous about the keynote. I wanted it to be great and I wanted them to be happy they had asked me to do it and I wanted attendees to walk away inspired and feeling great about themselves. (yes a tall order, but …. “go big or go home”). I even spent time with the wonderful Deborah Hartmann Preuss who is an agile coach and a life coach who helped me deal with the vast amount of ideas I had spinning around my head and figure out how to find a thread… a path through this talk.

Alan and his fantabulous wife, Michele, let me stay at their house. (Please don’t tell Sampson about my new-found love for their dog, Malcom!) Rachel Reese was there too (just from LambdaJam and doing a well-received F# talk) and (I’m laughing) she had driven down from Chicago (don’t ask) so I managed to get carted around the whole time by one friend or another.

I *think* the keynote went well (if you thought it sucked and don’t want to look like a jerk for saying so, feel free to contact me privately). Just having a handful of people tell me afterwards (& on twitter) that they were inspired, and learning that I also am most always overwhelmed by the challenges of learning made them feel better (ala “I am not alone”) was enough to make me ecstatic. I don’t imagine I was able to do that for everyone in the room, but knowing that I was able to give something useful to those who I heard from makes me a little verklempt.

The keynote began with this video:

And ended with this image:

Silhouette of hiker against mountain backdrop (Tennessee Department Of Tourist Development)

It also included bird-murdering cats.

I also truly enjoyed giving my other talks. The first was in a very small room with people standing in the hallway…others giving up and going off to other talks. I loved that on twitter, there was an impression of a standing-room only, overflowing attendance. But the truth is that there were only 22 chairs in the room and maybe 35 people were able to squeeze in. It wasn’t that hundreds were trying to attend. 😉

That session, the keynote and the Women in IT panel were all on Friday. The WIT panel was co-organized by the amazing gals, Corinna Brock and Arlene Gray (best twitter handle ever: @WhimSQL). The three of us made up the panel. And OMG! It turns out that Corinna was a 2003 grad of the same VERY SMALL very special liberal arts college (Wells College) that I graduated from (so many years ago that I’m not even going to put that down).

That night I managed to lose my laptop. (In the end, it turned out that I had left it behind in the vendor area when Rachel (it’s her fault, I swear) called to me from the elevator to hurry up (her fault! her fault!)). I didn’t notice how light my bag was until 1 restaurant, 1 ice cream parlor, 1 after party and then all the way back to Alan’s house. I chose not to freak out (thank you crashplan) and was only worried about how I was going to prepare for my Testing for Fraidy Cats talk the next day. So yeah, I got there early on Saturday and got my laptop and hid out to prepare for a few hours.

In the afternoon, I left the conference to go take a quick peek at the Smoky Mountains with Srinu Tulluri and fellow Pluralsight author, Michael Perry. Then we dropped Michael at the airport and I got his rental car since I was staying for another 24 hours.

I had another wonderful night at Alan & Michele’s. I watched a movie with Michele and their son while Alan, Chapman Smith, Srinu and Spede Bryan, spouted off  and had a grand old time (with the help of a bottle of bourbon) on the porch. 🙂

As if this wasn’t already a wonderful weekend, the next day was even more beautiful for me. After pancakes and another git lesson, I drove out to Oak Ridge to visit my 96 year old Great Aunt and Uncle. (He’s a real character with an incredible history and was featured recently on the local t.v. station). I haven’t seen them in too many years. I cried when I arrived. I cried when I left. I captured lots of video and family stories to share with the rest of my family. So thank you thank you, CodeStock, for this gift. Notice that my 96 year old Auntie’s hair isn’t even white. It’s still got a lot of brunette in it. Darn…I don’t have those genes. However, Uncle Josh has a full head of hair at 96 and on my father’s side, his dad had a full head of hair still in his late 80’s when he passed away. Of course there are more important things that I have acquired from them genetically, but still… And Aunt Grace got a huge kick out of my green fingernail and toenail polish.

WP_20130715 2