This is why you have to talk about global climate change

Cold steel chains
We’ve had an incredibly warm winter for this part of the world, with little snow (or precipitation of any sort) to speak of, and very little sub-zero (F) weather. One of those distracting (and highly short-term) upsides to global warming.

This week, however, Mother Nature decided to make it clear she hadn’t completely forgotten about us here in the frozen north, and it’s turned thoroughly chilly. To quote the National Weather Service:

A very cold period is in store for Saturday through next Tuesday. Daytime highs will struggle to reach zero and nighttime lows will be from 15 below to 25 degrees below zero. Wind chills Saturday and Sunday mornings will range from 25 below to 40 below zero.

The current wind chill is -19F. Oh, joy.

The bummer (beside the freezing your keester part) is that you just know there are people that will remember this, and not the warm, snowless Christmas, and use this as “clear evidence” that there’s no such thing as “global warming”, hurricanes, ice shelves, and scientific consensus notwithstanding.

Sigh. Nothing like judging the entire data set from the outliers…

Now I need to bundle up (in a very serious sense of the word) for my walk in to the office…

No tag for this post.

Related posts

The importance of language and notation in problem solving

Pointed words

Found this in the slides for a presentation by Jim Weirich entitled “10 things every Java programmer should know about Ruby”:

A language that doesn’t affect the way you think about programming is not worth knowing — Alan Perlis

Amen, brother!

A little searching reveals that it was included in a collection of such pearls of wisdom in an article entitled “Epigrams on programming“, published back in 1982. Some have aged poorly, and some I just disagree with, but there are some real gems and this is one of them.

There have arguably been five significant milestones for me in my development as a programmer:

  • Learning to program (almost entirely self-taught, first on a TI-59 programmable calculator in Jr. High, and then on a TRS-80 Model 1, 16K, Level 2 BASIC in High School)
  • Learning structured programming and memory management (PASCAL, then C, while an undergraduate)
  • Learning (in graduate school) to think of programs as formal, mathematical texts, which can be reasoned about in a mathematical way. This included learning pure functional programming (Miranda) and then taking a wonderful and head bending course on the formal derivation of programs from specifications taught by Edsger Dijkstra.
  • Learning object-oriented programming (C++, Eiffel, and Java) as part of my teaching here at UMM.
  • Moving from a kinda-sorta waterfall model of software development to understanding and embracing agile development methods (again as part of my teaching here at UMM). There was no programming language, per se, but ideas and tools such as test-driven development, JUnit, Clover, refactoring, and Eclipse all played important roles and certainly changed the way I think about programming.

Of those, probably the hardest was probably really “getting” objects after all those years of C. It was the first major transition (since my initial forays into BASIC) that was entirely self-taught, and really changing the way I thought about the structure of software was tough. Now, on those odd (and thankfully very rare) occassions when I find myself leaving the world of objects, it’s amazing how strange and foreign the old ways seem and feel.

It’s been a while since I’ve learned a programming language that stretched my head and helped me rethink some important things. I think Ruby has the potential to open up some new doors (if small ones), and Rails is pretty darn cool, so I’m looking forward to becoming more conversant in those universes.

No tag for this post.

Related posts