All blogs / Software / engineering practice
Marco Dorantes' WebLog
learn.microsoft.com/en-us/archive/blogs/marcod
"Computer science is no more about computers than astronomy is about telescopes" -Edsger W. Dijkstra
Software / engineering practiceEssays / personalC# / .NETMicrosoft blogsMSDN archive
- Posts
- 228 from 19 Feb 2004 to 11 Aug 2018
- Posting
- archived, read-only
- Kind
- personal blog
- Feed
- https://learn.microsoft.com/en-us/archive/blogs/marcod/feed.xml
2018 5
2017 2
2016 1
2013 8
2012 4
2011 5
2010 14
- Creative thinkers and science
- Which Science?
- Watts S. Humphrey
- What does it mean to get an Agile certification?
- Good intention alone
- Software development process is about flow
- Microsoft Application Architecture Guide, 2nd Edition
- Debate is welcome in adaptive thinking
- The Zen of Architecture
- Una introducción al pensamiento crítico
- The Design of Design: Essays from a Computer Scientist
- Working on software theory
- What is agile development?
- More on the C++ mindset
2009 14
- Human-oriented software design is error-oriented
- My Technical Readiness
- Product owner
- Writing
- SQA — Are you–really–making sure that quality is present?
- Philosopher
- Where are we -as industry- about delivering business value to customers?
- Is there such a thing like a method of design?
- Central piece of code as a cornerstone for a tool
- The importance of doubt in software design
- LINQ Samples
- Know your design tools — The Singleton case
- An artistic -as in skillful- programming excellent textbook
- The practical disproportion
2008 21
- Agile and lean fads are the new excuses for brittle software
- A way to specify behavior
- Faculties offer courses and lectures freely
- Adaptive Methods for reality
- A lawful name for a profession
- Most of people around are not doing eXtreme Programming, should I try it?
- Paving the history of our trade
- The new hells have been nurtured, by now they are alive and well
- The interplay of art and science in software
- Who is an architect?
- What do we –really– mean by 'coding'?
- What the role of an architect really wants to be?
- Should an architect code?
- Update on what is software development -art or science- debate
- Belief and behavior
- The "What's coming after X?" question
- Learning items in software development
- Message to the whole body of management teams in software industry
- Software design skill and implementation details
- Stepping into base class libraries of .NET Framework while debugging
- Is there any argument against beautiful code?
2007 26
- Time-bound and context-bound code
- Team efficiency and division of labor
- Trait of an agile environment: planning-oriented developers
- Software architecture is much more than structure
- Trait of an agile environment: business people who care their project
- Executable design notations: Standard C++, Smalltalk and LISP
- The Problem with Programming and the second part of The design and evolution of C++
- Una introducción a la ciencia - Pensamiento científico y el método científico
- Critical thinking and software design
- ‘The real world’ – an update
- The way to go fast, is to go well, going well is to be knowledgeable
- Empirical process control
- COM+ object per client model
- Peter Provost on TDD
- Traits of an agile environment
- Trait of an agile environment: disciplined design work
- Trait of an agile environment: rock solid architecture
- Trait of an agile environment: inspect frequently and adapt
- Execution order between base and derived inline instance field initializers
- Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software
- What type of person should design software?
- Analog Computers. Could I sometime put my hands on one of those?
- Enabling better levels of multi-paradigm design adoption
- Designing distributed server-side Windows applications that scale very well
- Software design epistemology and The Three Pigs
- Do you amass nasty feelings about your designs?
2006 39
- Essence of process improvement: closed-loop feedback
- You can have joy even if you do not have fun
- “Why do I have to turn off parts of myself to work here?”
- People, people…all the important things are about people, of course
- CMMI and Agile are just not comparable
- Philosophies of computer programming are closer than they appear
- What are programs?
- Essence of good design: underlying abstractions
- The Problem with Programming – Interview with Bjarne Stroustrup
- Recursive functions
- Outstanding articles on splendid subject matters
- Learning feels good, understanding feels yummy
- Anonymous method trivia
- A more efficient iterator pattern implementation since C# 1.0
- What are pointers?
- Science/engineering or art/craft - Does it matter at all?
- Designing a software service interaction using WSE 3.0
- The attention where it belongs (and it is not in the marketing hype)
- The Underlying Theory of Project Management is Obsolete
- The source of many design and programming problems: unchecked assumptions
- "Look, this also is very important..."
- Theory and practice complement each other well
- A test-driven design style for database-based applications with VSTS
- Designing scalable systems
- Running a software company
- Agile mindset: pigs or chicken
- An embryonic profession: poor and misleading ways of formalisms
- Reflecting in action: programming other algorithms
- Reflecting in action: programming simple algorithms
- A basic and focused utility to send SQL statements with ADO.NET
- Argument processing and C# 2.0 iterators
- Dependency management: Coupling and cohesion
- Dependency management with CLR Assemblies and Types: Relationships
- Professional testing = Applied epistemology
- How MDA could not be just another CASE fallacy?
- Pillars of our trade
- Concurrency concepts now, more than ever before
- You are 100% accountable for your source code
- Taking software engineering seriously
2005 54
- John Vlissides
- Skillful software design and the scientific method
- Helping others with software design
- Code is model - it depends on the code, of course.
- CLR v2.0 Array.ForEach and List.ForEach
- I like it even more!
- I like it!
- People-oriented
- The growth of a feature
- Traincraft manifesto
- Great art and the craft of software development
- How a software service code looks like? A design snapshot
- How a software service code looks like? A design snapshot
- UML 2.0 general purpose utopia or DSL handy alternative?
- Formulating software
- String trim with ISO C++
- "If you are not doing Proof-Driven Design..."
- Performance and Throughput, terms I need to know well
- The old new Asynchronous JavaScript and XML programming (AJAX)
- Basic mechanism for "WAP Push" notification application with Exchange Server 2003
- "Often the result of good design is to cut the feature"
- Java Generics Considered Harmful
- It's a good time to be a developer
- The power of simplicity
- Silicon photonics will be everywhere
- Valuable shortcut keys
- If UML is the answer, not many people are asking the question
- Software design talk: Do you mean methods or operations?
- You know what they say: Service-orientation is not something new
- How to increase quality of software solutions to business problems?
- What “The Real-World” really mean...to you?
- Test-driven design entails a different mindset than validation and verification testing
- Strategic design decisions in software architecture –a reflective practicum
- What a wonderful and fulfilling experience this of pair programming
- Organic and evolutionary software design – a metaphor
- In control of software architecture and design assets
- A more useful analogy to understand C# mindset
- C# front end destructors vs generated CLR code
- The code wants to go somewhere, listen
- Unconscious design defined
- The need of a coherent, intelligible and complete software design method, as the veteran Booch Method
- Is source code really the actual design of a software product?
- A Maturity Reference Model or Advice for Software Development Managers
- Crystal Clear:A Human-Powered Methodology for Small Teams by Alistair Cockburn
- Microsoft Word 2003 – one XML InfoSet, a Microsoft Word 2003 rendition
- Microsoft Word 2003 – one XML InfoSet, many renditions
- Microsoft Word 2003 – one XML InfoSet, many renditions
- Theoretic physics vs. programming. Which is more challenging?
- Software Pioneers in general, a software quality view in particular
- The people factor - The resistance to ideas is positive and vital
- Reminder for the agile practitioner: Management-Aided Software Engineering
- UML 2.0 Infrastructure feedback
- A next level of consciousness
- Reflections on software design profession – introductory thoughts
2004 35
- Is software engineering what professional programmers do?
- Software engineering is not, yet
- Handbook of Software Architecture
- Simple XML Schema Definition snippet - hierarchy
- Simple XML Schema Definition snippet
- C++ as a very good medium for multi-paradigm design expression
- What use good designers to convey good designs?
- Good designs come from good designers, good designers come from...
- The path to architecture practice – overview
- Modern business rules specification
- Architecture is not about scalability, not even about user, it is all about usage
- The engineering in software development – trails of design mastery
- Job security – it is up to us
- Grand Challenges for software development
- Wicked problems, righteous solutions
- The Professor Edsger Wybe Dijkstra school of thought
- Re-positioning of original intent, purposes and scope of OO among SOA benefits
- Does SOA imply that OO is dead?
- Disciplined development and methodology
- Help with misconceptions about eXtreme Programming
- Improve our industry!
- Ward Cunningham and Jim Newkirk on Channel9
- Culture
- MSF v4.0 and agile development
- TDD, dynamic languages and object design
- A classical abuse of object orientation: Modeling the real world
- it is the people, as always has been
- Note about Pair programming opinion (in Spanish)
- General disclaimer we all already know
- Design paradigms marginalization
- Job security
- We do interiorize software concepts by practice
- Including Common Intermediate Language to your .Net designer toolbox – generating CIL
- Including Common Intermediate Language to your .Net designer toolbox - the beginning
- Abstraction stacks and multi-paradigm software design