Categories
Functions

In light of yesterday’s events (a.k.a. yesterday sucked)

As a leader, today you’re probably dealing with a lot of emotions personally as well as with your team members. As I worked to navigate this with my team, I sent the following note, feel free to borrow & modify as you see fit.

Team,

I wanted to send a note to the team in light of yesterday’s events, that being said, staring at a blank email I struggled to know where to even begin so I apologize this didn’t come out first thing this morning.

Having lived in all the different places I have lived, my social media feeds encompass the entire political spectrum and it is VERY evident, regardless of where you land politically, yesterday was a day of major disappointments and frustration and I personally don’t remember a day where I was as easily distracted by every alert that came across my phone more than yesterday. A day fraught with as much emotion as yesterday had, many people are probably still feeling the effects and probably will for a while. The question becomes how do we move forward? That question will be addressed at multiple levels of our society many of which we have no control over, but in the span that we control as a team I’d like to set some guidelines.

  1. Start with the fact that on a continual basis, everyone on this team has exhibited that even though there are wide differences of opinion on many different subjects, we all care about each other and want what’s best for each other. With this fact as the foundation of how we interact with each other, we’ll get through this just fine and come out stronger on the other end.
  2. Acknowledge whether or not you’re ready to discuss what happened yesterday and be transparent with those on the team and respectful when others tell you they don’t want to talk about it or be around it being discussed. It is ok if emotions are still too raw.
  3. If you’re not ready to engage with the team, engage with someone in a constructive manner whether that be a friend, partner/spouse, or a professional counselor (for the employees in the group do not hesitate to engage our EAP resources, contractors, please work with your company to understand what benefits you have available). Do not go through this alone!
  4. Consider a media/social media fast – Tim Ferriss made a great point yesterday when he posted and followed up on this Tweet [added below], sometimes the worst thing you can do in moments like this is to keep scrolling…
  5. Finally, if at all possible, avoid echo chambers. When you’re ready, seek different perspective and understandings of what happened. We can all use this as an opportunity to grow. As terrible as yesterday was, it would be even more terrible if we didn’t learn from it and the only way we can do that constructively is together.

As you all know, my door is always open, please feel free to engage me with any questions you may have.

Categories
Functions

2013 Gartner Application Architecture, Development & Integration Summit – Day 3

2013-12-05 08.36.25

Disruptive Fun

The keynote speaker this morning was Ze Frank, the Executive VP for BuzzFeed. He talked about the 3 major disruptions in his life and how they got him to where he was. The cool part about this keynote is that he was able to take his learnings from the media world and apply them to IT and essentially say that the core fundamentals that every company deals with are the same. He shared some beautiful and hilarious stories from his journey and overall it was a great talk. If you ever have a chance to listen to Ze Frank I would definitely recommend it, he is a very insightful communicator that you will have a great time learning from.

Ten Essential Principles of Modern Application Architecture

This session was a great wrap up to all the things that I heard over the course of the summit. The basis was a service oriented architecture, then from there you can build the quick delivery context aware applications that we need to move towards amidst the Nexus of Forces.

Summary

Overall, I thought the summit was a great conference and I learned a lot of things I can take back and begin to push the implementation of at our company. I wish though that others from my company had been here, especially from our integration group.

Categories
Functions

2013 Gartner Application Architecture, Development & Integration Summit – Day 2

2013-12-04 05.27.32I expected some nickel and diming when I came to Las Vegas but then I realized that nickels and dimes were too cheap…The picture to the left is what my gym was on Day 2 of the Gartner AADI Summit 2013.  I had been told that there was a fitness center available but packed some in room workout capabilities into my suitcase just in case. I was right, the hotel wanted to charge me $25 a pop to use their “Resort” every time I wanted to workout. Thankfully, I packed my yoga gear and DVDs so I was able to get my workout in nonetheless without paying the extra $25.

You didn’t come here to read about my workout though, here’s the good stuff!

UX Design and the Enterprise Architect

Who doesn’t want a little User Experience (UX) with their coffee? This was a really good session centered mainly around the paradigm shift that is coming/in process. “UX is the looming relevance challenge for IT organizations.” How true this is and how irrelevant are so many of our IT organizations. The speaker talked about the paradigm shift that is needed. He mentioned that you can’t just stick lipstick on a pig when it comes to UX. UX has to be the first part of the process and that is the fundamental problem with IT, we are engineers/developers first so we want our processes to be engineer/developer focused. However, when it comes to UX, design has to come first and it is not just aesthetics. It is fundamentally how your users interact with your apps. One key takeaway that I took from this session was with the fracturing of the UX between iOS, Android, & Windows Modern UI it is impossible to use a cross platform UX that fits with every platform so he recommended developing a corporate UX standard that would be standard across your apps and hold true to that UX framework to simplify your development.

Atlassian: How to do Kick-@$$ Software Development

Aside from the proliferation of the term Kick-@$$ (which the speaker tastefully warned the audience about at the opening of his session) throughout the length of this talk (to the point that I finally copied the text to my clipboard and just hit ctrl+v every time I needed to use it in my notes it was happening so often) this was an extremely good session. The premise of the talk was that in the movie Kick-Ass (I haven’t seen it) the main character decides one day that he is going to dress up as a super hero and fight crime…the first time he does though he is brutally beaten up and stabbed and it is not until he forms a team around him that he really starts to Kick-@$$ so to speak. Complete with the full getup (minus the mask – to which the speaker relayed to us that it is not smart to wear a mask in a casino :-), the casino had guards waiting for him at the elevator before he even made it from his room) the speaker lamented the early days as a software developer where he felt he would go out and save the world with software but just ended up feeling beat up and stabbed.  He then talked about Agile and its adoption history and how we are moving into a post-Agile world and companies are struggling to figure out how to deliver software more and more quickly in this new environment. He then talked about the 4 main ways that Atlassian does Kick-@$$ software development:

  1. Build Kick-@$$ things
  2. One Kick-@$$ team
  3. Kick-@$$ Collaboration
  4. Kick-@$$ Automation

Overall, this was a great talk with a lot of cool takeaways the biggest one for me being how intently focused they were on being a development shop more and not growing their non-development staff in leaps and bounds, but enabling their developers to do the testing, support, & design roles by bringing in a few experts that trained their developers how to fulfill those roles.

The Element: How Finding Your Passion Changes Everything

This session was hilarious, though terribly named. Sir Ken Robinson gave an extremely engaging talk about talents and creativity and how they affect our ability to create and re-create our lives and the paths we take. Two key quotes I have from this session are “Whatever you woke up worrying about this morning…get over it! How important can it possibly be in the grand scheme of things.” and “Talent is often buried deep, the challenge for leadership is to create conditions where talent will show itself.” If you are interested, I would recommend watching his TED talks, he is a very engaging speaker and his views on education and the reform it needs seem to be very good.

HTML5 and the Journey to the Modern and Mobile Web

This was a really good background session on what HTML5 was as well as what it isn’t along with the common misconceptions surrounding HTML5. I could tell that both presenters really knew what they were talking about. One key takeaway came during the recommendations section of their session when they said, “If your team has not yet done so, learn HTML5 and CSS3 and emerging modern Web tools.”

Microsoft: Delivering Revolutionary Modern Business Applications with Cloud, Data, and Devices

This one was a good presentation on what is available using Windows Azure for a public cloud provider especially in conjunction with on premise solutions. A key takeaway here is that Microsoft wants to be your cloud provider and they are doing everything they can to make themselves the vendors of choice including giving you options to host non-Microsoft products on their cloud and having easy integration from the cloud to on-premise solutions giving you a truly integrated hybrid solution.

Architecting and Developing Secure Applications

This was a pretty meaty session for 4:30 in the afternoon, but it was a great one! He started out by saying that writing secure applications is a major paradigm shift for so many developers because what they don’t know CAN hurt them. He laid out 3 key issues then expounded on them. The 3 Key Issues were:

  1. Why should enterprises place an emphasis on application-layer security?
  2. Which application security testing solutions can help enterprises develop secure applications and how will these evolve?
  3. How should organizations take a 360 degree comprehensive approach to application security?

I have a ton of notes for all the different sections, but if I were to recommend a starting point for anyone, look at the slide deck (see session title link), then go download the 360 degree approach white paper.

Summary

Overall, it was a really good day with a lot of information. I am almost to the point that I am on brain overload, but I think I have enough left for day 3 🙂

Categories
Functions

2013 Gartner Application Architecture, Development & Integration Summit – Day 1

2013-12-03 10.49.05I am currently in Las Vegas, Nevada for the Gartner Application Architecture, Development & Integration Summit (AADI). One of my goals for this year with my boss is to get outside the Microsoft bubble that I have been living in for the last several years and expand my horizons. We both thought this conference would be a good fit for that goal. I intend on blogging about this conference similarly to the way I blogged about Microsoft TechEd back in June (Day 1, Day 2, Day 3, & Day 4). Before I get too far though, I would like to make a comment about Vegas itself. Vegas is one of those places that I never had any desire to go to. I will say though, from a macro view, the place is beautiful, the grand hotels & casinos that you see as you drive onto the strip are absolutely breathtaking. The picture at the top of this post was taken as I stepped out onto a balcony during an intermission between two sessions. I will probably post at some point about my thoughts when you get up close with Vegas but the short version is that people just seem sad and it breaks my heart.

Anyway, I don’t want to dwell on my personal thoughts on Vegas because that is probably not why you are reading this post. So on to the Summit. On to the sessions that I attended.

Developing a Mobile Development Strategy

This session was a good first session to attend. The speaker went through and laid out all the steps, pitfalls and the things to think about as an enterprise is building their mobile application strategy. One of the key points he made that I thought was great was that you don’t want to just replicate your desktop/web apps on the mobile device. You want to as the question “What does mobile enable me to do that I couldn’t do before? How does it fundamentally change the business process?” While this seems fairly intuitive, you would be surprised at how often the business asks for a desktop replacement app on their mobile device and it is our job as IT to help them figure out and articulate what features they really need on the  mobile device. Another key point that he brought up that I wholeheartedly agree with is that you need to develop a User Experience (UX) practice within your organization and he brought this home with the question “How many times have you had to take a training class for a mobile app?” Your mobile app user experience (and all your applications for that matter) should be intuitive and easy to use. The final point he made that I want to emphasize before moving on is that testing is integral to a sound mobile application development strategy.

Gartner Opening Keynote: Making the Nexus Real

I have never been a big fan of marketing speak and buzzwords. I am much more a fan of speaking plainly and getting to the point. Prior to yesterday, I didn’t really know what the “Nexus of Forces” meant. I didn’t waste too much time figuring out what it was ahead of time because I knew a group like Gartner would make it painfully obvious what it was. I was ABSOLUTELY right, I think I heard the term “Nexus of Forces” at least 300 times yesterday. To be brief the forces involved are Cloud (another buzzword I hate), Social Computing (usually just said as Social), Information, & Mobile. What makes the Nexus is that these forces when combined enhance and build upon each other in such a way that they amplify each other exponentially. Overall, the keynote was really good, marketing jargon and buzzwords aside. I think I could have listed to Daryl Plummer all day long. He is a fantastically engaging speaker that really knows what he is talking about. The keynote went through several case studies of companies that had successfully harnessed the Nexus of Forces to propel their business forward.

The Impact of Nexus Forces on Your Application Strategy

The key emphasis in this session was that your current application strategy is going to have to change. We are no longer living in the environment where software will live unchanged for decades. You MUST change! This was my first introduction to the Pace-Layering Strategy for your applications. The short and simple is that you divide your systems into three layers Systems of Record, Systems of Differentiation, & Systems of Innovation. The Pace part of it comes down to the pace at which those things change or are thrown away. His last takeaway similar to some of the others that I heard was that we as IT need to switch from project to product (app) thinking.

Successful Applications Demand Selfish Software: Only the Paranoid Survive

This was probably my favorite session of the day…his main point was that as IT we need to shift our focus from delivering projects to delivering applications. If you deliver projects you are judged by on-time, on-budget, & met functional requirements (all of which shift in the name of the project) and end up delivering an application that the users can’t stand and all the features that they would actually want were pushed to “Phase 2” which we all know never happens. Instead, we should  deliver selfish apps (not applications) that meet the user’s requirements. The features of selfish software are:

  • Black Belt Defensive Coding
  • Self-Diagnostic
  • Self-Testing
  • Self-Monitoring
  • Self-Reporting
  • Self-Healing (eventually)

The other piece of information that I really liked was that he redefined “Legacy” software as software that is hard to change. I liked this new distinction of legacy.

Town Hall: Enterprise and Application Architecture Best Practices

This was a great session for me as the Application Architect for Phillips 66. When I took the role I took it knowing that it was a very amorphous/undefined role and that between my supervisor and I we would be determining what my role included. After hearing this session, I was greatly encouraged by the fact that the path that Mike and I have laid out for me and my role seems to be the right path…I seem to be doing the right things. The particular interaction that I felt particularly encouraged was in regards to how Solution (Project/Technical) Architects and Application Architects should interact and overlap which we seem to be doing right at Phillips 66.

Trinity Millennium Group: Getting to Cloud – From Legacy to Agility

This session was probably my least favorite and I probably should have left early…I really didn’t get much out of this session. It was another rehash or what Legacy 2.0 was and how their company upgrades applications for their customers.

Gartner Keynote: Business Outcome-Driven Enterprise Architecture: A Quantum Leap in Delivering Value

Even though I don’t currently operate in the Enterprise Architect role within our company, I am part of our companies EA infrastructure so I wanted to hear what EA was supposed to be or rather what it should be. This session was a very good session to attend for this information and I recommend that anyone in the EA role within their organization review the slide deck and if available watch the video.

Summary:

Overall, this was a great first day. You can’t expect every session to be riveting and life changing, but I did learn a lot from the first day and am looking forward to Day 2. Other than the snafu with the conference organizers not ordering enough lunches for everyone this was a very good day.

[I was one of the people who missed out on lunch but found out too late to do anything about it so I went 12 hours between meals…makes for a very crabby Architect, let me tell you and is probably part of the reason I fell asleep during the Trinity Millennium Session :-)]

Categories
Faith Family Fitness Fun Functions Random Thoughts What's up

I don’t have birthdays, I level up!

birthday-level-upFor those of you who know me, you know that the month of October is pretty crazy for my family…we have 4 birthdays during the month of October, including mine… I have decided that I’m not going to see it as a birthday though. I loved video games growing up and my favorite one was Final Fantasy (I still have it on my Gameboy Advanced). Final Fantasy was a role playing game where your team of four Warriors of Light, each carrying an orb representing one of the four elements, travelled the world defeating the enemies that were keeping the orbs dark and thus saving the world. Like most role playing games, as your characters fought battles and beat enemies they gained experience points. When they had accumulated enough experience points, they would “level up” which would result in them becoming stronger, more intelligent, and for those with magical abilities, more magical abilities. I made a decision this year when I had my birthday, I would no longer see it as getting older. I see that every day in the new gray hairs in my beard and hair that greet me anew each morning and the hairline making that slow, painful march towards the back of my head. What I want to focus on is this, “How did I “level up” with regards to Faith, Family, Fitness, Fun, & Functions?” After thinking about it, here is what I have come up with. This year I leveled up in the following ways:

  • Faith: While I have always tried to have an active devotional life, this year, I figured out what works for me. Thanks to the Bible App, I have found plans that work for me to get a good dose of the word (almost) every morning. I have always tried the route of reading through the Bible in a year, but most of the time it just wouldn’t sink in the way I wanted it to, the chunks were too big. This year, I started with a Joyce Meyer devotional plan and a Billy Graham devotional plan that were offered within the Bible App and I love it. I get a daily dose of Word along with the opinion and insights from people I greatly respect. In addition to this, I have been listening to the Church on the Move podcast on a regular basis. A few years ago, my in-laws bought me a 160 GB iPod and I filled that sucker up…I have sermons and podcasts going back to 2009 from Church on the Move and I figured out a nifty little trick on my iPod to be able to listen to them in chronological order so what I do is just start the first sermon and the let them go while I am working, mowing, or doing other things…it is awesome!
  • Family: Our family continues to get better and better. Caleb is reading like a champ and his teacher says he is just doing amazingly. Carrie is blossoming more and more each day. Abbie is coming full force into her personality and it is amazing getting to know this little fireball that is our third child. Mandy and I are more united than we have ever been, we don’t even fight over finances anymore :-). That is huge! The interesting thing about our finances and the stress it used to cause and how we resolved it was that it was one small change that we made to how we budgeted that got us on the same page and revolutionized how we communicated about our finances. It wasn’t a huge revelation, it was tweaking the way one piece of our finances was represented on our budgeting spreadsheet that helped us see exactly where we were with our money and with that one little clarification, we got it and we were able to see things eye to eye.
  • Fitness: If you have been reading my blog or known me for any length of time, you know I struggle with my weight and have been trying to lose weight for a long time. This year I had a revelation in how to structure my workouts so that they were actually doable. Previously, I had been trying to do P90X either in my morning or in the evenings but with 3 kids and running a business on the side I was very sporadic in my workouts and wasn’t seeing the results that I wanted. I tried working out at work by running on the elliptical but the frustrating thing was it took me 45 minutes to an hour during work to get a 30 minute run in, then I remembered that our workout facility at Phillips 66 has a pool…light bulb…if I go down and swim for 20 to 30 minutes, it only takes me a minimal amount of time to get from work to the pool and from the pool back to work…bingo…and the pool is open enough in the morning that I an get there almost every day because I can almost always find 30 minutes to get down to the pool. By getting consistent with the pool workouts it took the pressure off me trying to get an hour workout at home so I was able to cut my lifting routine down to 30 minutes a night which makes it so much easier to do.
  • Fun: The big win for Mandy and I this year was that we took the kids to Disney World. While that was the highlight, we have also tried to make sure that we do something fun on a regular basis. We just recently had a staycation where we went to Incredible Pizza, the Tulsa Children’s Museum, and had a movie night. We have fun. We also like to win and right now Caleb’s soccer team (the one I coach) is one win away from being undefeated this season. Carrie started dance lessons this past summer and absolutely loved them.
  • Functions: I hit a major career milestone this year. The interesting thing about it was that it came with very little fanfare through an IM from one of my co-workers and I didn’t even realize it was that much of a goal for me until I hit it. In my side business I also have a major announcement coming very soon which will be very cool for us and become a great avenue of blessing for us in addition to my main job at Phillips 66. I need to keep quiet on these things right now but will let you know as soon as I can.

Overall, this has been a great year, I’m looking forward to how I will level up next year and what God has in store for me and my family. Sound off in the comments below with how this year has been a great year for you!

Categories
Functions

Microsoft TechEd Day 4

I made it to the final day of TechEd with my brain still intact and am almost completed with the template for a Phillips 66 Branded Single Page Application Template based on the SPA session yesterday so I think the conference has been a success. I am brimming with ideas that I can take back and help to make our development staff more effective with (and I got 14 different t-shirts).

Entity Framework in Core Business Applications and Domain-Driven Design Approaches – Julie Lerman – @julielerman – [Channel 9 Session Info]

This session made me wish that I had gone to one of the three other Domain Driven Design (DDD) sessions. Julie admitted at the very beginning of the session that she was still in the process of learning DDD and how to best use it in your application development. She admitted that she is still trying to break herself of habits and mindsets developed over the last 25 years that she has been a developer. Based on what I learned at the session, I want to do more investigation on DDD because I think that it will help multi-developer teams develop faster as well as have the potential to make applications faster because they are only making Entity framework load up information related to the portion of the application that the user is currently working in. One other takeaway is that DDD is a drastic mind shift from the way current development at most companies is done and it may be a case of “the view is not worth the climb” type of scenario, but it definitely warrants more investigation.

Hardcore Debugging – Andrew Richards – [Channel 9 Session Info]

Wow, when I signed up for this class, I was expecting it to be Visual Studio debugging…man was I wrong. I saw way too much hex code for my tastes. I am thankful for guys like Andrew, but that is not my cup of tea. This session was essentially about Windows debugging using different analysis tools. If you go to the Channel 9 Session Info you can see what tools he uses, then go to his Channel 9 show Defrag Tools to learn how to use them. I think I will stick to tools where F9, F10, & F11 are your best friends.

Serious Web Services: Windows Communication Foundation (WCF), Web API, OData, & More – Daniel Roth – [Channel 9 Session Info]

Daniel did a really good job making something that could be extremely dry into a very interesting talk. He started talking about all the ways that Microsoft has addressed web based services in the past, then made recommendation around which ones not to use. Then, he went into a comparison of SOAP vs… REST, ending on the fact that you should be using RESTful services in most cases. He did also comment on when you should use SOAP services to be fair to both sides. Then, he talked about OData and how it is supported in the different technologies. Finally, he talked really quickly about SignalR as he ran out of time.

Understanding Dependency Injection and Those Pesky Containers – Miguel Castro – @miguelcastro67 – [Channel 9 Session Info]

I was already cracking up before the talk even started, the man is hilarious (his joke about Canadian Formula 1 racing being called Formula 1-eh was awesome). This session was meant to be an intro course on dependency injection. While I had already used dependency injection in the past, I still wanted to get more familiar with the concept. Miguel did a great job explaining what dependency injection was and why in our environment of programming you HAVE to write loosely coupled code that can be easily tested. He then demonstrated using mocking code and listed the available mocking frameworks such as:

He then explained the idea of Dependency Injection Containers that allow a developer to properly do dependency injection. The libraries that he demonstrated were:

I would have to say that this was probably one of the most practical sessions of the conference. If I were to list the top 5 sessions that I went to this week in terms of most practical to use in my day to day job, they would be (listed in order or attendance):

Overall, I thought the conference was very informative and can definitely see the benefit to my company from the things I learned this week.

Categories
Functions

Microsoft TechEd Day 3

What has cracked me up every morning this week is that they take a bunch of geeks (who in general do not like a lot of attention) and basically make them feel like they are walking down the red carpet for each meal.

2013-06-05 07.29.11

Developing iOS and Android Apps with Windows Azure Mobile Services – Chris Risner – @chrisrisner– [Channel 9 Session Info]

As you are all aware mobile is huge right now. The problem is that there are so many options available to develop your applications with. Windows Azure Mobile Services allows you to use Azure as the backend for your applications. The cool thing about it is that Azure Mobile Services is essentially front-end agnostic. In this session Chris demoed using Azure Mobile Services with PhoneGap for iOS, native Android development, then he developed an iOS application with Xamarin. I was really impressed by the capabilities of the Windows Azure Mobile Services and how easy it was to do the server side and the programming for integrating with Azure Mobile Services. The other thing that I was really impressed with was that Chris was so good with all three development options that he was able to seamlessly switch between all the different tools and not skip a beat.

Essential Truths Everyone Should Know About Performance in a Large Managed Codebase – Dustin Campbell @DCampbell – [Channel 9 Session Info]

This is the second session I have attended from Dustin Campbell (he co-led the Visual Studio Tips and Tricks session I attended on Day 2). He works on the team that builds Visual Studio so I can imagine the code base that he deals with is enormous. He discussed the essential truths about performance management which are:

  1. Profiles do not lie
  2. Good tools make the difference/The right tool is essential
  3. Allocations are king

He explained the tool that they use at Microsoft (PerfView) and how they applied it to project Roslyn (C# & VB .NET Compiler rewrite project). He walked through all the different things they found (too many to enumerate here, go download the slides from the Channel 9 page for this session if you want to see them all). The key point though with all the “smells” is to not go on a witch hunt unless the profiler points them out make informed decisions on optimization based on the performance monitor results.

Design or Die: The Challenge to the Microsoft Developer Ecosystem – Billy Hollis – [Channel 9 Session Info]

This was not your normal TechEd session due to the fact there was very little code shown. What I experienced though was so much better. Billy was an incredibly dynamic speaker and he broke down how the standard grid based applications just don’t cut it anymore. He talked about how the iPad was a paradigm shifter but it just wasn’t cut out for enterprise apps. With the Metro/Modern UI/Windows Runtime interface and its supporting technologies (much faster development, better security and manageability, more device options to plug-in, and more form factors to choose from) we are in a much better position to deliver business apps that our customers can use. He also offered several resources for understanding good User Experience principles and better design process principles, one such resource was his Pluralsight course: Creating User Experiences: Fundamental Design Principles. Overall, this was a great session and I was brimming with ideas when I left the session.

Agile Testing Across Browsers and Across Devices – Matthew Aniyan – [Channel 9 Session Info]

This session was a non-starter for me. What I learned from this session, I learned in the first 5 minutes and that was you can do coded user interface tests using a neat little recorder tool that popped up when you started the test, then if you refactor that code and add one line of code you can do multiple browser tests.

On my way out of that session, I saw this guy and it pretty much summed up how I am feeling right about now…my brain is tired from all the learning.

this dude had the right idea

Single Page Applications with Microsoft ASP.NET – John Papa – @john_papa – [Channel 9 Session Info]

I wasn’t quite sure what to expect from this session, but I was completely blown away. All the lethargy and tiredness I had been feeling prior to this session was completely erased. I walked away from this session with so many ideas buzzing around my head was spinning. I had heard of some of the libraries that John talked about Knockout.js, Bootstrap.js, Angular.js, but once he introduced Durandal.js and Breeze.js I finally got it. By the way he showed it, the idea of single page apps really has an appeal for me for both the company I work for and the company that I run on the side. I really look forward to digging into the idea of SPAs.

That’s it for today, there will be more tomorrow.

Categories
Functions

Microsoft TechEd Day 2

Wow, if I thought that my brain was full after day 1, it is overflowing now. If the theme yesterday was convergence, the theme today in the sessions I went to was convenience. Below is my assessment of the sessions I went to.

 

Building Windows Store Line-of-Business Apps – Brian Noyes – @briannoyes

I expected this session to be a down and dirty demo of the grueling work that you had to do in order to create a Windows Store app. Was I wrong. This demo was for a tool called Prism. Prism is a framework that handles all those dirty little details that I thought the session was going to be about. The main topics were the MVVM app structure within Prism, Navigation and State Management, and Validation. If you have a Pluralsight subscription, Brian recorded an in depth training course on Prism.

 

Visual Studio Tips & Tricks – Dustin Campbell – @DCampbell & Scott Cate – @ScottCate

If you thought you knew how you use Visual Studio, you are woefully mistaken. This demo was given by two guys that have a mouse that is collecting dust by the side of their keyboard. Some of my favorites that I found out today are:

  • Windows + # – toggle between items that are pinned on your taskbar
  • ctrl + ; & ctrl + ‘ – toggle between team explorer and solution explorer
  • alt +w then l – closes all windows
  • ctrl + [ then s – sync the solution explorer with active document
  • F12 – go to definition
  • Shift + F12 – find all references
  • ctrl + alt + down – document drop down. Beware though, on some video drivers this key combination will flip the screen .
  • ctrl + i – invoke incremental search
  • ctrl + shift + v – cycle through clipboard
  • ctrl + . – will pull up smart tag [my new best friend] (the smart tag is the little blue box that is almost impossible to hit with the mouse)
  • ctrl + F10 – run to cursor 
  • ctrl +shift + F10  – roll back while debugging.
  • shift + alt + F11 – step into specific (when you have nested function calls and need to step into a specific one)
  • magnify win + +, reverse win + -, jump to 100% win + esc

Microsoft ASP.NET SignalR: The Real-Time Web Made Simple – Damian Edwards – @damianedwards

If I thought that Prism was going to make building Windows Store apps easier, SignalR is ridiculously easy! I watched a simple real time chat system between two browser windows created with less than 20 lines of code. That being said, while the code he wrote right before our very eyes is not production ready code, it goes to show how powerful SignalR really is. The is a NuGet package that contains the sample code that will show you how to use SignalR.

I was also able to go to the Ask the Expert sessions as well to have some great conversations with some really smart people. I am looking forward to what the next two days have to offer. I will continue to blog as I am able.

Categories
Functions

Microsoft TechEd Day 1

I am currently in New Orleans, Louisiana for Microsoft TechEd. So far it has been an absolute blast, but I think by Thursday, my head might explode! While I don’t intend to live blog the event (one of my co-workers recommended I bring a Go Pro to the event and have that attached to my head for the entire time I was here), I do intend to offer a recap of what has been going on from a developer’s perspective. I meant to get this post out last night and intend to post each night if possible, but see the next paragraph as to why I didn’t get it out last night…

I am writing this blog post on my new Surface Pro! Microsoft gave all the attendees a ridiculous deal on Surface tablets (they limited each of us on the number we could get so no, I cant get you one). Here is a picture of it as I was getting ready to write this morning.

my new Surface Pro

The conference started off in true Louisiana style with the Trema band coming on stage to perform. They were awesome!

2013-06-03 08.19.55

Next came the keynote by Brad Anderson and a whole host of other Microsoft VIPs. The two main takeaways for me from the keynote were:

  • No developer who has an MSDN subscription has any excuse not to use Windows Azure for their dev and test environments.
  • I can’t wait for Visual Studio 2013, it looks awesome! The heads up display blew my mind!

The foundation session that I went to was Building Modern Business Applications. Some key takeaways were:

  • Developers are dumb if they don’t embrace cloud VMs for their development.
  • It is possible to set up private VPNs with Azure so that your boss/security guys don’t have to freak out about you pushing things to the cloud.
  • The Visual Studio/TFS 2013 combination is a very powerful combination.

The next session was Microsoft ASP.NET, Web, Cloud Tools Preview. This was an awesome session aimed directly at developers. In this session the presenter demoed a bunch of the One ASP.NET toolset that is coming with Visual Studio 2013. Some key takeaways were:

  • By default in the One ASP.NET model websites styling will be based on Bootstrap. Mind.MentalState == MentalState.Blown. I had been meaning to look into Bootstrap for our group, now I HAVE to look into Bootstrap for our group.
  • The out of the box scaffolding that is available means you will probably never write an admin page by hand ever again!
  • Cassini is dead…long live IIS Express.
  • Web API routing is now an inline ability instead of having to provide long drawn out routing files.
  • They plugged Xamarin for mobile development.

My next session was on developing for Windows Phone 8. This session was a high level overview so it was not as in depth as I would have liked, but it gave a really nice overview. This talk was when it really hit home how much Microsoft is working on convergence. It is starting to become a major theme to what I am seeing. It was also one of those great times where you can learn so much by watching someone use a tool that they are extremely familiar with.

The session that I attended was titled Partner Solutions for Modernizing Your Applications, there were 3 companies that presented.

  • Mobilize.net – This company has an application that will take your existing Visual Basic 6 code and convert it to .NET code. It can even go a step further and take that .NET desktop app and turn it into an ASP.NET web application (albeit a very ugly one). We didn’t get to see the code that was actually created, but by looking at the file structure generated I was able to infer that the conversion was a straight one to one conversion, meaning that the semi-object oriented code that was VB6 was converted straight across into semi-object oriented code on the .NET side.
  • Xamarin – Xamarin is taking the world by storm. They have an awesome product that allows you to write native Android, iOS, Mac, & Windows Store apps using C#. If you architect your code correctly, you can get complete code reuse out of your business and data layers. If you are using Visual Studio, you can even have 1 solution that has all three front ends in it. Xamarin stole the show in this because they were able to demo the same app on both a windows tablet and an iPad emulator (by running the source from Visual Studio) to show the native look and feel of the apps on their respective devices.
  • Citrix – I felt really bad for the Citrix guy because he had to follow Xamarin with a product that didn’t have the visual flash that Xamarin did. If I were to have any advice for the coordinator, they should have put Citrix before Xamarin.

After the last session, the Tech Expo grand opening kicked off. I ended up making it to most of the booths with only 2 bags full of stuff (less to pack on the way home) so that was good. I was able to meet Chewbacca and Princess Leia at one of the booths which was pretty cool. Overall, I was very impressed with the breadth of products that were represented at the conference, some I plan on using (or am currently using) and some I won’t.

I had a great Day 1 at TechEd…I’ll post another entry after Day 2 is over.

Categories
Books Fun Functions Non-Fiction Reviews

Book Review: The Art of Deception – Kevin Mitnik

41a1QKf5hbL._SL160_You know a book about hacking and methods to protect your company from social engineering attacks written by a guy who is such a great hacker that part of his sentence is that he is never allowed to surf the internet by himself (he has someone else check his email for him) is going to be a great read on how Hackers (or social engineers as they are called in the book – he explains why) infiltrate your company to steal your sensitive information. The typical business owner would do everything they could to beef up the security infrastructure within their business, often deploying the most state of the art (at the time) gadgets that money can buy, then they would rest on their laurels because they knew they were secure…As Mitnik goes on to explain, no, no they are definitely not secure, they have neglected the weakest point in any security infrastructure…the people.

In a very engaging read, The Art of Deception explains the very real threat from social engineers and how to best combat it as someone responsible for protecting your companies assets. I would recommend this very well written book for any person in any company…seriously…Mitnik explains how everyone in your organization is part of the security infrastructure and how they need to be properly educated on the security protocols (that should be, but in most places aren’t) in place at any company. I really can’t say it enough, if you employed at any company with trade secrets (or really any company for that matter) you need to read The Art of Deception by Kevin Mitnik. No really, go, I don’t want to see you around here till you have read it (just kidding, but really if you can’t afford it, go check it out from the library)…