SlideShare une entreprise Scribd logo
1  sur  49
Télécharger pour lire hors ligne
ALT.NET - Are you ready
                         for the red pill?




JOAKIM SUNDÉN
joakim.sunden@avega.se
http://www.joakimsunden.com/

                                                1
This is your last chance. After this, there is no turning back.
You take the blue pill - the story ends, you wake up in your bed and
believe whatever you want to believe.

You take the red pill - you stay in Wonderland and I show you how
deep the rabbit-hole goes.

                                                                       2
JOAKIM
SUNDÉN
         3
BODEN

                           4

Born and raised.
5

But now I live in Stockholm.
Kul
                         bild
                          här
                                6

Where I work at Avega.
7

As a consultant.
8

Now you know me. So, who are you?
9

Microsoft is catering for all your needs so why should you leave the comfort zone? Besides, “no one ever got fired
for choosing Microsoft”.
10

Lots of tools and practices out there not originating from Redmond.

Some open up entirely new possibilities in how we can work.

Some of Microsofts tools are great as well - the important thing is to use the right tool for the right job, not just
the same old tool you happen to know or that a vendor throws in your lap.

To be able to make that choice, you have to keep an eye out for alternative and better ways.
Continuous Improvement

                                                                                                                   11

Popular slogan for describing ALT.NET.

David Laribee, the guy who coined the label “ALT.NET”, recently proposed two criteria for determining whether or
not you belong in “this little movement we’ve got going on”.
12

1. Do you write software or otherwise work in a team using the .NET Framework?
13

2. Are you interested in learning and improvement?
14

That is really not all there is to it.
15

At the Microsoft MVP Summit, March 2007, Daniel Simmons presented the upcoming Entity Framework.
So, in a little cluster in the center on the right, I called them the
NHibernate Mafia; and it was James Kovacs, Scott Bellware, Jeffrey
Palermo, Jean-Paul Boodhoo, all in a little cluster, and they are
just hammering these guys...



So, these guys -- I mean they buy ORM in a very deep way; and they
are all NHibernate believers -- they are in there. and so, they are
looking at this product in its very early stages, which I get -- they
are just getting started on this, it’s just coming along now, been
thought through a few times, and they are comparing it to NHibernate
and just boom, boom, boom. And Dan, I’d never met him before; he was
sitting in the left, right at the front, and I figured out because
there was couple of his guys in the back that it was him. And when
the session broke, he made the mistake of popping up a couple of
times and answering questions. So now they knew who he was; he had
the target pinned on his head. When the session broke, it took him an
hour to get out of the room. The boys were just on him; and even when
he got out of the room, they were still on him.


(Richard Campbell and Carl Franklin, .NET Rocks podcast #226, April 5 2007)



                                                                              16

Passion.

Entity Framework critique: not object-first, not persistence ignorant.
We may have sung a
              couple NHibernate arias
               at the Summit, but they
                 were all part of the
                 greater TDD opera.




                                                   Scott
                                                  Bellware
                                                             17

Scott Bellware, “On Being the NHibernate Mafia”.
Agile folks

             It’s not the tools, it’s the
                      solution.

                        Maintainability




                                                                                     David
                                                                                    Laribee
                                                                                              18

David Laribee: “the meeting between the Agile folks and Microsoft’s ADO.NET team”

“If there has to be a label I’ll propose a new one: ALT.NET”
ALT.NET according to David Laribee
     1.You’re the type of developer who uses what works while
     keeping an eye out for a better way.

     2.You reach outside the mainstream to adopt the best of
     any community: Open Source, Agile, Java, Ruby, etc.

     3.You’re not content with the status quo. Things can
     always be better expressed, more elegant and simple, more
     mutable, higher quality, etc.

     4.You know tools are great, but they only take you so far. It’s
     the principles and knowledge that really matter.
     The best tools are those that embed the knowledge and
     encourage the principles (e.g. Resharper.)
                                                                         19

ALT.NET “manifesto”

Next milestone: ALT.NET Open Space conference in Austin, October 2007.

Mailing list created.
ALT.NET:

               agile + object-orientation +
                patterns + TDD + DDD
                             =
               OOPSLA school of software
                       development

                  Mainstream Microsoft !=
                     OOPSLA School




                                                                            Martin Fowler
                                                                                                                   20

“The alt.net mind-set is one that is very familiar to me. It has that mix of agile + object-orientation + patterns +
Test-Driven Development + Domain-Driven Design which is very much the school of software development that I
favor. (Lacking a proper name for it, I'm inclined to call it the OOPSLA school of software development.)

There is certainly a belief that there is a mainstream Microsoft orthodoxy at the moment, one that doesn't fit the
OOSPLA school. And there's some frustration with that. But the point here is that it's not that the alt.net
community thinks that the perceived mainstream Microsoft route should be erased, but that the Microsoft world is
big enough for different approaches.”
21

MSDN Way: Rapid Application Development (“demoware”), visual programming, data-centric.

APIs and framework details, not design and coding fundamentals.
22
23

Maintainability, how easy it is to change and evolve the solution.

Much of our time is “maintenance”.

OO design = maintainable
24

Robert Martin, “Agile Principles, Patterns, and Practices in C#”
S   ingle Responsibility Principle


O   pen Closed Principle


L   iskov Substitution Principle


I   nterface Segregation Principle


D   ependency Inversion Principle



                                     25
DRY




                                                                                                                      26

Don’t Repeat Yourself

Martin Fowler: “I often find that a nice design can come from just being really anal about getting rid of duplicated
code.”
27
28

Encourages a good maintainable design and enables change.

BDD, Behaviour-Driven Development. “TDD done right” + new vocabulary (behaviour not tests) + more.
29

Popular tools oriented at fulfilling the values, principles and practices of ALT.NET.

NHibernate. Object-/relational mapper for persistence ignorance etc.

Castle Project:
MonoRail - MVC framework for web applications
ActiveRecord - an implementation of the ActiveRecord pattern on top of NHibernate.
MicroKernel and Windsor - Inversion of Control containers.
30

CruiseControl.NET - Automated Continuous Integration Server.
ReSharper - Great Visual Studio productivity add-in.
NUnit and MBUnit - open source unit test frameworks.
RhinoMocks - Dynamic mock object framework.
ALT.NET in summary
• Continuous improvement
• Pragmatism
• Principles and practices, not tools
• Maintainability
• Agile
• TDD/BDD
                                        31
32

Criticism
33

Nothing new.
Exactly, that’s the point. Learn from mistakes, history, proven principles/practices.
Still unknown to majority of ,NET community.
34

Sam Gentile: “ALT.NET is a divisive thing. No matter what they tell you, they are full of negative energy, they sneer
at others that don't buy into their view and sneer at the ‘enterprisey’ folks. I know, I was there. I am not going to
be part of it any more.“

Roy Osherove and others: dogmatic.
Promoting certain tools, categorically denying the value of other tools, e.g., TypeMock.

David Laribee: “we are discarding politeness for the sake of efficiency”.

Sam Gentile is now back on the mailing list and Roy Osherove is still a very active member of the ALT.NET
community.
35

Alternative != in opposition to Microsoft
Alternative == something that embraces choice.
Scott Bellware: “the ALT.NET movement has to be seen as anti-crap. ALT.NET is anti-Microsoft when it is
necessary, and it’s very pro-Microsoft when it isn’t.”
36

What if I am alternative (continuous improvement etc) but not agile/OO? Don’t like ReSharper and NHibernate?

That’s ok, but avoid certain topics on the mailing list...
What do you want?




                                              37

What does ALT.NET want?
38

Change.

Separate ALT.NET groups or influencing existing ones? Both.

Jeremy Miller, The Shade Tree Developer blog, sees ALT.NET as a second pole of leadership and thought in
the .NET community, complementary to the traditional leadership, such as book authors, MVPs and INETA
speakers focused on existing and forthcoming Microsoft tools. The void that ALT.NET will fill is information and
leadership on: OOP fundamentals, development processes and practices and alternative tools.
What has ALT.NET accomplished?




                                                                                                                39

So what has ALT.NET accomplished so far?
Difficult to tell if ALT.NET should be credited for individual steps of progress.

But Microsoft has changed since the inception of ALT.NET.

Entity Framework. Advisory council: Martin Fowler, Eric Evans, Jimmy Nilsson and others. New persistence ignorant,
object-first version announced @ PDC.

ASP.NET MVC was first demonstrated at the first ALT.NET conference i Austin.

Microsoft is shipping the JQuery open source JavaScript library with the next version of Visual Studio.

Microsoft is taking an active interest in the community. Microsoft employees like Glenn Block are active
participants in the ALT.NET community.

The ALT.NET crowd is growing.
Tracks at conferences.
National and local user groups.
Why bother?




                            40

Why bother?
41

Because you care. Because you are passionate about what you do. And because you are a professional developer.

People want to do a good job. In order to do that you have to use the right tool for the right job.
42

“If all you have is a hammer, everything looks like a thumb”.
43

Same tool == same solution, no matter what the problem is
What can I do




                                   44

What can YOU do?
45

Inform yourself. Read books and blogs, make connections, join the mailing list. Learn on the job.
As Abraham Lincoln said: quot;If I had four hours to chop down a tree, I would spend three hours sharpening the saw.”
46

ALT.NET Open Space conferences in USA, UK, Sweden.
47

Swedish ALT.NET user group.

Coding dojos in Stockholm and Sundsvall.

Ask for a group close to home on the mailing list.

Start your own local user group! If you need help you can contact me or just drop an e-mail to the mailing list.

Your local .NET User group.
ALT.NET Resources
   Altnetpedia, http://altnetpedia.com/
   ALT.NET mailing list, http://tech.groups.yahoo.com/group/
   altdotnet/
   Ayende Rahien, http://www.ayende.com/Blog/
   Jeremy Miller, http://codebetter.com/blogs/jeremy.miller/
   David Laribee, http://laribee.com/blog/
   Glenn Block, http://codebetter.com/blogs/glenn.block/

   Sweden
   ALT.NET Sweden Google Group, http://groups.google.se/group/
   sweden-altnet
   Jimmy Nilsson, http://jimmynilsson.com/blog/ (in English)
   Torkel Ödegaard, http://www.codinginstinct.com/ (in English)
                                                                                                         48

Somewhat arbitrary list.

Jimmy Nilsson wrote THE ALT.NET book, “Applying Domain-Driven Design and Patterns: With Examples in C#
and .NET”.
Thank you for listening!

  http://www.joakimsunden.com/

                     Questions?
  Thanks to Peter Hultgren, Ulrika Johansson, Pontus Frendin,
  Håkan Alexander and Torkel Ödegaard from the Stockholm
  ALT.NET User group for helping me with this presentation.


Joakim Sundén
                                                                49

Contenu connexe

Dernier

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 

Dernier (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

En vedette

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

En vedette (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

ALT.NET - Are You Ready for the Red Pill

  • 1. ALT.NET - Are you ready for the red pill? JOAKIM SUNDÉN joakim.sunden@avega.se http://www.joakimsunden.com/ 1
  • 2. This is your last chance. After this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe whatever you want to believe. You take the red pill - you stay in Wonderland and I show you how deep the rabbit-hole goes. 2
  • 4. BODEN 4 Born and raised.
  • 5. 5 But now I live in Stockholm.
  • 6. Kul bild här 6 Where I work at Avega.
  • 8. 8 Now you know me. So, who are you?
  • 9. 9 Microsoft is catering for all your needs so why should you leave the comfort zone? Besides, “no one ever got fired for choosing Microsoft”.
  • 10. 10 Lots of tools and practices out there not originating from Redmond. Some open up entirely new possibilities in how we can work. Some of Microsofts tools are great as well - the important thing is to use the right tool for the right job, not just the same old tool you happen to know or that a vendor throws in your lap. To be able to make that choice, you have to keep an eye out for alternative and better ways.
  • 11. Continuous Improvement 11 Popular slogan for describing ALT.NET. David Laribee, the guy who coined the label “ALT.NET”, recently proposed two criteria for determining whether or not you belong in “this little movement we’ve got going on”.
  • 12. 12 1. Do you write software or otherwise work in a team using the .NET Framework?
  • 13. 13 2. Are you interested in learning and improvement?
  • 14. 14 That is really not all there is to it.
  • 15. 15 At the Microsoft MVP Summit, March 2007, Daniel Simmons presented the upcoming Entity Framework.
  • 16. So, in a little cluster in the center on the right, I called them the NHibernate Mafia; and it was James Kovacs, Scott Bellware, Jeffrey Palermo, Jean-Paul Boodhoo, all in a little cluster, and they are just hammering these guys... So, these guys -- I mean they buy ORM in a very deep way; and they are all NHibernate believers -- they are in there. and so, they are looking at this product in its very early stages, which I get -- they are just getting started on this, it’s just coming along now, been thought through a few times, and they are comparing it to NHibernate and just boom, boom, boom. And Dan, I’d never met him before; he was sitting in the left, right at the front, and I figured out because there was couple of his guys in the back that it was him. And when the session broke, he made the mistake of popping up a couple of times and answering questions. So now they knew who he was; he had the target pinned on his head. When the session broke, it took him an hour to get out of the room. The boys were just on him; and even when he got out of the room, they were still on him. (Richard Campbell and Carl Franklin, .NET Rocks podcast #226, April 5 2007) 16 Passion. Entity Framework critique: not object-first, not persistence ignorant.
  • 17. We may have sung a couple NHibernate arias at the Summit, but they were all part of the greater TDD opera. Scott Bellware 17 Scott Bellware, “On Being the NHibernate Mafia”.
  • 18. Agile folks It’s not the tools, it’s the solution. Maintainability David Laribee 18 David Laribee: “the meeting between the Agile folks and Microsoft’s ADO.NET team” “If there has to be a label I’ll propose a new one: ALT.NET”
  • 19. ALT.NET according to David Laribee 1.You’re the type of developer who uses what works while keeping an eye out for a better way. 2.You reach outside the mainstream to adopt the best of any community: Open Source, Agile, Java, Ruby, etc. 3.You’re not content with the status quo. Things can always be better expressed, more elegant and simple, more mutable, higher quality, etc. 4.You know tools are great, but they only take you so far. It’s the principles and knowledge that really matter. The best tools are those that embed the knowledge and encourage the principles (e.g. Resharper.) 19 ALT.NET “manifesto” Next milestone: ALT.NET Open Space conference in Austin, October 2007. Mailing list created.
  • 20. ALT.NET: agile + object-orientation + patterns + TDD + DDD = OOPSLA school of software development Mainstream Microsoft != OOPSLA School Martin Fowler 20 “The alt.net mind-set is one that is very familiar to me. It has that mix of agile + object-orientation + patterns + Test-Driven Development + Domain-Driven Design which is very much the school of software development that I favor. (Lacking a proper name for it, I'm inclined to call it the OOPSLA school of software development.) There is certainly a belief that there is a mainstream Microsoft orthodoxy at the moment, one that doesn't fit the OOSPLA school. And there's some frustration with that. But the point here is that it's not that the alt.net community thinks that the perceived mainstream Microsoft route should be erased, but that the Microsoft world is big enough for different approaches.”
  • 21. 21 MSDN Way: Rapid Application Development (“demoware”), visual programming, data-centric. APIs and framework details, not design and coding fundamentals.
  • 22. 22
  • 23. 23 Maintainability, how easy it is to change and evolve the solution. Much of our time is “maintenance”. OO design = maintainable
  • 24. 24 Robert Martin, “Agile Principles, Patterns, and Practices in C#”
  • 25. S ingle Responsibility Principle O pen Closed Principle L iskov Substitution Principle I nterface Segregation Principle D ependency Inversion Principle 25
  • 26. DRY 26 Don’t Repeat Yourself Martin Fowler: “I often find that a nice design can come from just being really anal about getting rid of duplicated code.”
  • 27. 27
  • 28. 28 Encourages a good maintainable design and enables change. BDD, Behaviour-Driven Development. “TDD done right” + new vocabulary (behaviour not tests) + more.
  • 29. 29 Popular tools oriented at fulfilling the values, principles and practices of ALT.NET. NHibernate. Object-/relational mapper for persistence ignorance etc. Castle Project: MonoRail - MVC framework for web applications ActiveRecord - an implementation of the ActiveRecord pattern on top of NHibernate. MicroKernel and Windsor - Inversion of Control containers.
  • 30. 30 CruiseControl.NET - Automated Continuous Integration Server. ReSharper - Great Visual Studio productivity add-in. NUnit and MBUnit - open source unit test frameworks. RhinoMocks - Dynamic mock object framework.
  • 31. ALT.NET in summary • Continuous improvement • Pragmatism • Principles and practices, not tools • Maintainability • Agile • TDD/BDD 31
  • 33. 33 Nothing new. Exactly, that’s the point. Learn from mistakes, history, proven principles/practices. Still unknown to majority of ,NET community.
  • 34. 34 Sam Gentile: “ALT.NET is a divisive thing. No matter what they tell you, they are full of negative energy, they sneer at others that don't buy into their view and sneer at the ‘enterprisey’ folks. I know, I was there. I am not going to be part of it any more.“ Roy Osherove and others: dogmatic. Promoting certain tools, categorically denying the value of other tools, e.g., TypeMock. David Laribee: “we are discarding politeness for the sake of efficiency”. Sam Gentile is now back on the mailing list and Roy Osherove is still a very active member of the ALT.NET community.
  • 35. 35 Alternative != in opposition to Microsoft Alternative == something that embraces choice. Scott Bellware: “the ALT.NET movement has to be seen as anti-crap. ALT.NET is anti-Microsoft when it is necessary, and it’s very pro-Microsoft when it isn’t.”
  • 36. 36 What if I am alternative (continuous improvement etc) but not agile/OO? Don’t like ReSharper and NHibernate? That’s ok, but avoid certain topics on the mailing list...
  • 37. What do you want? 37 What does ALT.NET want?
  • 38. 38 Change. Separate ALT.NET groups or influencing existing ones? Both. Jeremy Miller, The Shade Tree Developer blog, sees ALT.NET as a second pole of leadership and thought in the .NET community, complementary to the traditional leadership, such as book authors, MVPs and INETA speakers focused on existing and forthcoming Microsoft tools. The void that ALT.NET will fill is information and leadership on: OOP fundamentals, development processes and practices and alternative tools.
  • 39. What has ALT.NET accomplished? 39 So what has ALT.NET accomplished so far? Difficult to tell if ALT.NET should be credited for individual steps of progress. But Microsoft has changed since the inception of ALT.NET. Entity Framework. Advisory council: Martin Fowler, Eric Evans, Jimmy Nilsson and others. New persistence ignorant, object-first version announced @ PDC. ASP.NET MVC was first demonstrated at the first ALT.NET conference i Austin. Microsoft is shipping the JQuery open source JavaScript library with the next version of Visual Studio. Microsoft is taking an active interest in the community. Microsoft employees like Glenn Block are active participants in the ALT.NET community. The ALT.NET crowd is growing. Tracks at conferences. National and local user groups.
  • 40. Why bother? 40 Why bother?
  • 41. 41 Because you care. Because you are passionate about what you do. And because you are a professional developer. People want to do a good job. In order to do that you have to use the right tool for the right job.
  • 42. 42 “If all you have is a hammer, everything looks like a thumb”.
  • 43. 43 Same tool == same solution, no matter what the problem is
  • 44. What can I do 44 What can YOU do?
  • 45. 45 Inform yourself. Read books and blogs, make connections, join the mailing list. Learn on the job. As Abraham Lincoln said: quot;If I had four hours to chop down a tree, I would spend three hours sharpening the saw.”
  • 46. 46 ALT.NET Open Space conferences in USA, UK, Sweden.
  • 47. 47 Swedish ALT.NET user group. Coding dojos in Stockholm and Sundsvall. Ask for a group close to home on the mailing list. Start your own local user group! If you need help you can contact me or just drop an e-mail to the mailing list. Your local .NET User group.
  • 48. ALT.NET Resources Altnetpedia, http://altnetpedia.com/ ALT.NET mailing list, http://tech.groups.yahoo.com/group/ altdotnet/ Ayende Rahien, http://www.ayende.com/Blog/ Jeremy Miller, http://codebetter.com/blogs/jeremy.miller/ David Laribee, http://laribee.com/blog/ Glenn Block, http://codebetter.com/blogs/glenn.block/ Sweden ALT.NET Sweden Google Group, http://groups.google.se/group/ sweden-altnet Jimmy Nilsson, http://jimmynilsson.com/blog/ (in English) Torkel Ödegaard, http://www.codinginstinct.com/ (in English) 48 Somewhat arbitrary list. Jimmy Nilsson wrote THE ALT.NET book, “Applying Domain-Driven Design and Patterns: With Examples in C# and .NET”.
  • 49. Thank you for listening! http://www.joakimsunden.com/ Questions? Thanks to Peter Hultgren, Ulrika Johansson, Pontus Frendin, Håkan Alexander and Torkel Ödegaard from the Stockholm ALT.NET User group for helping me with this presentation. Joakim Sundén 49