Thursday, December 29, 2005
So I was doing some research about blogging and it’s application as a tool for learning. And I came across this great article written by Stephen Downes. This is a must read for anyone considering the use of blogs within their class room. What stands out for me in this article is the example of its use within the grade 5 - 6 classroom and how it is being so successful at engaging the students. The students are obviously getting jazzed about publishing their works for the world to see. All this said I also started thinking about the long tail. Why? because this article was written over 15 months ago and I am sure its readership will last for a long time as blogging becomes more understood and educators look for ways to integrate it into their classes.
Thursday, November 10, 2005
Microsoft Senior managment has made another call for a shared vision. When you think about it, this is about keeping everyone in the company moving in the same direction. They have just finished, or almost finished, shipping a whole lot of new products. And once you ship you need to know what you are going to do next. Microsoft has now told their staff what they are doing next. This is excellent! When you read through this product vision (roadmap) memo you read a very mature assessment of the current and emerging technology trends. This should come as no surprise, given the memo was written by Ray Ozzie of VisiCalc, LotusNotes and Groove fame… All this said, what I found interesting was the Opportunities section where seamless experiences were spoken about. I though to myself that one was missing, SEEMLESS LEARNING. Being bold, I took it upon myself to write it…
SEAMLESS LEARNING – Enabling you to create, store, organize, present, consume and interact with knowledge sources of all kinds; accessing, caching and viewing it anywhere you like regardless of where the knowledge resides. You should be able to share this personal knowledge base (or knowledge ecosystem) with all the others with whom you need to work and learn.
Tuesday, November 08, 2005
if you really want to see the future of learning and curriculum development you need to put a few items together. First, accept the reality that the online world is having a larger impact on the digital natives than your digital immigration status lets you see. Second, accept the fact that our current educational structures are in decay. Third, look at current learning theoryand instructional design methodologies combined with current gaming innovations and the crop of media (software) developers coming of age (or already have). Fourth, consider what the next iteration of the Web is. And what do you get, the future of learning.
Monday, November 07, 2005
Usually I try and stay away from cross posting, then I found this post from one of the feeds I monitor. It reminded me of a friend of mine who dropped out of school in grade nine cause he was “bored out of his tree”. He was definately an opt-out. I hope articles like this create some interesting dialogue. I like what Ontario is doing. I believe it will really meet a need. I was discussing with my wife a few weeks back about how our school system wasn’t meeting the needs of kids that were more “trades” oriented. In years past if you didn’t fit into the regular school system you could go work on the farm or with the railway or as a tradesperson. We need to get back to that.
Friday, November 04, 2005
A new form of technical documentation? Why not create a detailed picture of the architecture / design / algorithm / concept and attach a video or mp3 describing it. Quick, complete and the most cost effective. Remember, store these on a common share…
Every day I’m becoming more and more convinced Personal Knowledge Management is the next learning paradigm. When I consider how I construct understanding these days and the way I use all the knowledge acquisition tools and the importance of social networks / mentorship it isn’t far away where all this becomes a major force in how we survive in the knowledge economy. I need to learn fast and forget almost as fast. I need a repository for my intellectual capital. What tools will be available to store and harvest my personal knowledge and how can this knowledge be shared and collaborated over…
Wednesday, November 02, 2005
As a technical architect I sometimes find myself thinking about documentation. And what is the purpose of architectural documentation? I see two primary purposes for this documentation;
- For training purposes, so people know what is and what should be, and
- To support sales and marketing when the potential customer asks those sticky questions about scalability and security. I call these 2nd set of documents, “marchitecture”.
- We video record a discussion with the architects as they describe the architecture on a white board. Store this video on disk somewhere (or in a wiki) for later sharing.
- Any architectural components which are client focused should be archived into written documents.
Friday, October 21, 2005
I really do think that the Personal Knowledge Managment is the e-learning road we are on. With the Web 2.0 (whatever that really is), with innovations in learning theory, with disruptions in the structures of education (we’ve got a teacher strike on in BC). It’s all coming to a head. Yes, public education practices are a freighter, and hard to get to change course. But it will happen. And it will happen through self-directed learning initiatives. And a part of all this is going to be online reputation managment. So credentials will no longer matter, only what we can do, what we know and that we have a reputation to succeed. Again, not if, but when…
Tuesday, October 18, 2005
If you are alive and thinking about your life long learning or if you have children, or both this is an article you must read. http://elearnmag.org/subpage.cfm?section=articles&article=29-1
Friday, October 14, 2005
I wonder where things are going with Learning Management Systems (LMS). We’ve got a merger going on with two of the incumbents;Blackboard and WebCT. And both of these incumbents have systems that were developed during Web 1.0. And the Web 2.0 seems to be building steam. The learning theories to support cognitive flexibility and related theories are growing in depth and acceptance. And we have LMS that are targeting these new theories. Moodle is one such LMS and after taking a read of moodles proposed future, it get you thinking.
Thursday, September 29, 2005
The way we learn is changing. The current discoveries in regards to how we learn, combined with the deceasing price of computers are on a convergence. Fold this together with the emergence of new learning theories and techniques. The timing of a $100 laptop couldn’t be better. It will be interesting to see the impact of these computers on the young bright minds of the emerging-economic world.
Tuesday, September 27, 2005
Thanks to one of my co-workers I stumbled across how to get NUnit working with externally hosted App.config files in .NET 2.0 and VS 2005. I wrote test harnesses in NUnit for all the database classes I had developed. The connectionString was stored in the App.config file. Once I figured out that I needed the name of the config file to be the same as the “[appname].dll.config” stored in the “bin/Debug” directory then the NUnit tests worked. Then came the issue of deployment. We have a build server that uses cruisecontrol.net to manage our build and I needed to get the “[appname].dll.config” to be redeployed from my sandbox computer onto the build server. But how to deploy a file targeted for the “bin/Debug” folder. Nice thing about Visual Studio is you can set the property on the file so it gets copied from your project directory to the build server. Nice…
Monday, September 26, 2005
I love being in the flow… Over the weekend I was discussing Cognitive Flexibility Theory with a friend of mine. He is a builder of high-end architectural homes on the west coast. He has innovated in home construction by using lazer beam levels, mathematics and ‘good-old’ hand drawing. He’s really pushing the bounds of residential home construction. We were discussing how he got to this level of innovation, and his big challenge is training the employees of his rapidly growing company in how to do what he does. He described to me how he learned what he does… He described Cognitive Flexibility from an unknowing real world perspective. All very interesting… What I also found interesting in our conversation is that we needed to include the fact he was a classically trained musician as an attribute of his knowledge acquisition, processing and implementation.
Then this morning I was reading my daily RSS feeds and came across some stuff about Web 2.0 which then took me to a concept map.http://www.cetis.ac.uk/members/scott/blogview?entry=20050125170206
Then this morning I was reading my daily RSS feeds and came across some stuff about Web 2.0 which then took me to a concept map.http://www.cetis.ac.uk/members/scott/blogview?entry=20050125170206
Sunday, September 25, 2005
Is the Model View Controller (MVC) a design pattern, a framework or an architecture? I was having a discussion the other day with all of the developers on our team. We were discussing if the MVC was a pattern, a framework or an architecture? I said it was a pattern, two others said it was an architecture and the third said it was a framework. Being a thorough guy, I set out to prove it was a pattern.
I started out by getting definitions of a pattern, a framework, and architecture. This is best done yourself, but this is what I found;
- Architecture as defined by the Software Engineering Institute “…is the structure or structures of the system, which comprise software elements, the externally visible properties of those elements, and the relationships among them.”
- When in doubt, check the wiki. The wikipedia defines a framework as “…a reusable design for a software system (or subsystem). This is expressed as a set of abstract classes and the way their instances collaborate for a specific type of software.”
- Again, check the wiki. A “… design pattern is a general solution to a common problem in software design. A design pattern isn’t a finished design that can be transformed directly into code; it is a description or template for how to solve a problem that can be used in many different situations.”
Friday, September 23, 2005
If your into design patterns and your on any kind of a learning curve in implementing patterns in .NET and C# I’d suggest you read the descriptions of patterns from the data & object factory; developer training website. The great part of the site is they also provide samples.
Tuesday, September 06, 2005
There are many changes afoot with all the new technologies and the people who use them. In particular, the digital natives and how they will use technology 10 years from now… What I was pondering was how will they engage “traditional” education for their children? Is the concept of home schooling going to change with ubiquitous online education? Maybe our education system should be leaning toward a more metacognitive or “self-directed” approach.
Friday, August 12, 2005
So why pay Microsoft when you can get the tools for free? Currently, I am team lead for a very talented group of people. One of the things the team has agreed to do is embrace eXtreme Programming (XP) and Test Driven Development (TDD). We have been making awesome progress on all fronts. Every day we deepen our understanding of XP and we have solidified our build, test and deploy platform. Having a TDD approach will assist us to become more nimble in meeting our customer needs while ensuring we have a quality product through time. Another interesting thing we are doing is using Visual Studio 2005 (VS2005) and .NET 2.0 for our development platform. Yes, they are in beta, yet we are wanting to embrace the .NET platform for the next major release of our server product so we figured we would jump right into the latest toolset. What we have found is that the OpenSource tools for our TDD work very well in combination with VS2005. We are using; MSBuild, Nant, Nunit, Ndoc, Ncover and CruiseControl, and we hope to integrate FxCop soon. Having all these tools working together will allow us to focus further on the business needs and not the technology implementation (and if our refactoring efforts break anything…) To get better insight into using these tools I do suggest you look at their respective sites and do some further reading, in particular; http://www.codeproject.com/dotnet/tdd_in_dotnet.asp this is an excellent introduction in using Nunit and Mock objects. So, now I get back to the title of this entry, why spend the additional money on the Microsoft Team Services (which provide you the TDD tools) when you can get it for free through OpenSource?
Friday, July 29, 2005
So how cool is that. I was running through one of the new MSDN enterprise application blocks in the debugger (IMHO, the best way to get to know a piece of code). And I was stepping my way through and what do I see but an URL to a blog entry explaining the singleton pattern, and why it was utilized in this particular situation. Some of the best sample code I’ve ever seen…
Wednesday, July 27, 2005
I love diving into new technology. So much to learn, so many cools things. A whole lot of reading going on. So I’ve installed Microsoft Visual Studio 2005 (VS2005) and am wanting to work through a number of the samples. In particular, samples related to database / n-tier development. And VS2005 has a lot of new features for databases and database development. But when your learning you need to start somewhere. And I decided to start with the Microsoft MSDN Enterprise Library June 2005. This is a library of source applications for you to take a part and learn from. So I download the files, and begin to set things up. This is great, so to get the database samples running I need an instance of SQL Server. And fortunately, one comes with VS2005, it’s known as SQL EXPRESS or MSDE (by its previous encarnation). One problem it has no GUI. So how do you create databases, tables, etc. Well you could do it from within VS2005. But I’m a database guy at heart so I want my query window. Again fortunately, there is Express Manager a free download. If you used the default VS2005 default setup you need to logon to a server instance of SQL EXPRESS. This one got me, I was thinking “localhost” would work, nope! I ended up discovering that the instance you logon to is.\sqlexpress (that’s dot slash sqlexpress) there you have it. So much to learn, so little time… fun, fun, fun…
Tuesday, July 12, 2005
Evidence toward a trend. Over the last three years I have developed the though that curriculum should be developed once and used by everyone. At this time, on the planet earth, there must be a huge duplication of course material and curriculum. I wonder how many 1st year spanish courses have been developed, and how many more will be developed. Or what about 1st year calculus. The duplication of course material and effort in creating and delivering this material must be staggering. What a waste of Masters and PhD educated peoples time. Why not just develop the course material once and have it shared around the globe? It would all become a part of the creative commons. It could all be a part of a SCORM type standard which uses a UDDI type directory service for the discovery of the course material required by either student or teacher. We can see the beginnings of this with the opencourseware site of MIT. This isn’t a matter of if a global repository of courseware will be available, but when it will be available…
Tuesday, June 21, 2005
One in every 10 technical books I read is different from the rest. And recently I’ve read some good ones, in general they all lived up to my expectations. These books include;
- User Stories Applied by Mike Cohn
- Extreme Programming Explained by Kent Beck
- The Non-Designers Design Book by Robin Williams
Tuesday, June 07, 2005
Today we were discussing staff build up for a company I am involved with. Hiring staff is an interesting and very complex process when you think about it. Finding the right person to fill a job is very hard. Particulalry when you are building upon a staff of a 24 person start-up. Getting the right people, in the right job, at the right time, can have a huge impact on success. All this said, one of the other leads asked me what I wanted to do. It was an easy question to answer; “Process and architecture, I want to ensure we have a good process in place so I can start influencing architecture. Without process how can I ensure that the architecture I drop in at the begining of the development process, pops out at the end. You need process to implement architecture.” Quite a brash thing to say, and true. It would seem that theCarnagie Mellon Software Engineering Institute would agree with me.
Wednesday, May 11, 2005
I’ve been a software developer for over eighteen years. I’ve seen a lot of success during that time, I’ve also seen failure. As many of you who follow my blog know, I have a strong belief that software quality has a positive relationship with start-up success. I have presented information to support this belief. What I also believe is that to have software quality you need strong leadership and a well articulated product vision. The whole company needs to know where the product is going and why. This allows people to work hard and with creativity, yet also know the bounds of their endeavour. They also know what is on the horizon and what the technology needs to be able to do to meet product and customer needs. Writing a technology strategy is not easy task. It takes an understanding of the future, and that’s tough. What can help with articulating the company vision is to write a rock solid business case. And their a couple of places to help get you started. First, query your government, they are always interested in encouraging innovation its good for the national economy. Check out the Government of Canada’s template for “Creating and Using a Business Case for Information Technology Projects“. Also, there are always a number of companies who put together competitions for innovation. Check out Telus’ offering in support of the technology start-up. Either way, do your homework, create a strong vision, articulate your business plan and don’t get bogged down with it, start running…
Thursday, May 05, 2005
I was busy studying for one of my Masters courses and I’m having to describe a teaching scenario that I have utilized in the last few years and identify if it would be considered behaviorist, cognitivist or constructivist. All very interesting and it got me thinking about a course I taught about software development methodologies. This was a two term course where we covered Rational Unified Process, Microsoft Solutions Framework and Capability Maturity Model. And yes, a great course in my mind. I was reviewing the learning outcomes of the course and reflected upon them. I came to the conclusion that two of the most important factors in methodology for software development are; strongly defined roles and responsibilities and bidirectional traceability. The roles and responsibilities keep people motivated cause there is no question to what they have to do and the traceability forces quality. The course I taught would be considered constructivist. It build on ideas taught in the first course and forced the students to participate together in problem solving activities.
Tuesday, May 03, 2005
Wednesday, April 27, 2005
The rate of technology change is staggering. It’s faster now than it’s ever been. The internet is becoming a utility like our electricity, water works, roads, etc. It’s readying itself for it’s teen years. And you think it’s being a toddler was exciting. Just you wait. OpenSource will become mainstream popular. Keep in mind OpenSource will still only be a teen and in the beginning of its teens at that. What will be really interesting is when OpenSource discovers its place in about five to seven years, just as it becomes an adult. All this technology advancement will force more and more technology infrastructure into becoming utility. It happened to the backbone, it’s happened to TCP/IP, it’s happening to the net, now we are jumping up a level. Applications are also becoming utility; gmail, thunderbird,firefox. The next major step will be identity management and the infrastructure to keep all things personal. This is where OpenSource will begin to make it’s presence felt. People will not want their identity management to be held by anything proprietary. So people will elect something closer to an OpenSource model. What that is, I don’t know. What I do know is the utility applications infrastructure will become a part of our everyday life, like roads and electricty, and it will not be proprietary nor will it be pure OpenSource.
Wednesday, April 13, 2005
So as I settle into my new job I am looking into many things. Mostly focused on continuous improvement, the SDLC process, having set iterations (heartbeat) and deeper quality. Given the bulk of the server code is in VB6 I’ve been searching for artifacts to assist in the inevitable move to .NET. I came across this great refactoring description for VB. Enjoy…
Wednesday, March 23, 2005
So, I heard back from the NRC after I asked about software quality, start-up success and CMMI. They got back to me very quickly with a good nugget of information;
I just have one comment… using CMM-based assessment as a proxy for quality is not a good idea. CMMI is a process model, and as such does not really address product quality (it just assumes that heavy process = quality, and advocates measurement).So I continue my search for the truth about start-up success and software quality. I just finished re-reading a great paper named “Big Ball of Mud“. The paper is all about softwares defacto implementation architecture. What i have gleaned from this paper is “use an XP style methodology and refactor, refactor, refactor.”
Wednesday, March 09, 2005
I think I may have stumbled across a source of information for my software quality and start-up success relationship query. If you have been reading my blog you will know by now that one of my threads of activity is looking for quantitative evidence that software quality and good software engineering practices have a positive influence on a software start-ups success and ROI. Well, I’ve become frustrated with the challenges I have encountered in not finding quantitative evidence. So, I started thinking I should initiate a formal research project, and given my past positive experiences with IRAP and the NRC I could approach the NRC about my query as a research project. So during my searching of the NRC web site I found that they already have such a project underway. I’ve initiated contact, I’ll keep you updated as I discover more information.
Saturday, February 19, 2005
So I’m still searching for evidence on the positive relationship between software quality and technology start-up success. And I found some more, It was anecdotal evidence, but it was very strong evidence to say the least. Today, I was priviliged to speak with a fellow who had had a couple of start-up successes in the wireless world. He described to me how he’d worked with some very experienced software engineers. They were rigorous in their engineering discipline, everything was documented, architecture though to code modules. Nothing was built without proper design and test harnesses. Often the test harnesses were more extensive than the actual module. All this rigor paid off. When ever investors or potential partners did their code level due diligence, they were in awe. Essentially the code quality was better than the already established potential investor or partner. Each module was so solid, their code base became like using lego. If they needed to shift the company direction, they were able to inherit 80% or more of the code base. If they had a potential customer they could redeploy within hours to meet the need. The person I met with said it’s all about execution. To be successful in a start-up you have to be nimble, and you have to execute, execute execute. Having rock solid, modular software allows this.
Sunday, January 16, 2005
Well it’s happened, after 8 years as a Microsoft disciple and most of these as a Microsoft certified professional I’m seriously considering open source. What happened? How did I get here…..? Well, I’m both a technical architect and a teacher. I’m bringing these two disciplines together into being a technology savvy instructional designer. And after I started to network and asking around, it seems that the open source world has a greater foothold in the corporate training and academic arena. Now, I’ve known UNIX and it’s derivatives have mostly captured the halls of academia but it also seems to be pushing out into the corporate and training world. Some may balk at this last statement, and if you do, please provide me with reference sites where the Learning Management System (LMS) or the corporate courseware is a complete Microsoft solution. Either way, this is what I’ve learned; and I have to give thanks to Scott Tearle of Lambda Solutions for a great conversation over lunch about these matters. I’ll break what I learned into the server side and the UI side. I have this separation because all training and learning processes need administration (i.e. the LMS) and this admin is usually somewhere on the corporate/academic network and the end-user learning content has grown up to be rich interactive media, quite a different beast than the administration needs. So, on the server side their seems to be considerable growth in utilizing LAMP (Linux, Apache, MySQL, PHP) Servers to host the LMS. One of the main players in this is Moodle. Moodle is an open source LMS written for the LAMP Server (and other server environments, people say it runs fast and for the lowest cost on a LAMP server). The point is that an open source server application is quickly gaining considerable acceptance. Moodle is very well supported as an open source application, with a strong and active developer community. Learning about moodle is high on my list of to do’s as I deepen my skills as an instructional designer. On the client side (or gaming/simulation side) it’s Flash, Java, Python, C, C++, Etc. Either way, the client side is certainly not dominated by Microsoft technologies, and again, there is a healthy and growing community of opensource gaming/simulation engines, as evidenced by Panda3d. So there you have it, my conundrum; OpenSource or Microsoft. My intuition tells me open source will, in the long term, dominate. Their are many reasons for this belief and that’s a blog entry in itself. So, given how my current days unfold I will be living my conundrum. I’m persuing my Microsoft certification as a DBA and a .NET programmer, I’m learning flash and actionscript and I’m booting up a LAMP server to learn moodle.
Wednesday, January 12, 2005
It’s been a great sabbatical, but it must come to an end. Three months of learning, research, home renovations and gearing up for a new start. At the end of September I took the opportunity to take a break after 16 years of hands-on software development, database administration, project management, analysis and design and technology architecture. It has been a great time. Over the last three months I’ve done a whole lot learning and research about open source, online learning and coding in actionscript. I also managed to move the laundry room downstairs and have changed the old laundry room into another bedroom. The only thing is I’ve now become restless for work. I’d love to utilize my 16 years as a software architect, developer and database specialist and leverage everything I learned while getting technology degree in databases management systems into technical employment in the enterprise or educational setting. So if you know of some architecture or database work within businesses associated with content distribution or education it would be most appreciated. I’m an excellent solutions architect, enterprise programmer and DBA with extensive experience working on enterprise systems, multi-tier software development and data warehouse projects. If you any needs or leads please send an email; email@example.com.
Sunday, January 09, 2005
If you have children born since 1984 you may want to consider this whitepaper written by Marc Prensky to gain insight into the forces which will influence your children. For better or worse, these could be a big part of your childrens reality. Read, reflect and prepare yourself.
Monday, January 03, 2005
So after my new years resolution musings I set out to see if I could find a measure for gratitude. The short answer; nothing was easily available. There was a lot of great reading, yet there was no measure. I found something great from Henri J. M. Nouwen. And I liked it because I have always though many things in life are a choice. Here is what I found;
Gratitude as a discipline involves a conscious choice. I can choose to be grateful even when my emotions and feelings are still steeped in hurt and resentment. It is amazing how many occasions present themselves in which I can choose gratitude instead of a complaint. I can choose to grateful when I am criticized, even when my heart still responds in bitterness. I can choose to speak about goodness and beauty, even when my inner eye still looks for someone to accuse or something to call ugly.Also, the Buddhist tradition speaks of gratitude. And if you are interested, I suggest a good internet search and some time reading on gratitude is a great thing. Anyhow, I’ve found no direct measure for gratitude so I’m going to stick with my daily gratitude check… Happy New Year!
Saturday, January 01, 2005
Last night during our new years celebrations the resolution question came up. Most people wanted to do something like run four times a week or quit smoking…. All very admirable, I just wanted to be more grateful. They retorted, “you can’t measure grateful!” I replied, sure you can, “At the end of every day I’ll ask myself if I was more grateful and gracious in my actions, and if I was I’ll give myself a check for a grateful day. At the end of the year I’ll add up all the grateful days and see if I was more grateful.” All, but one, looked at me with furrow brow. I realized, all but one, didn’t get it. But I insisted that I will follow-up with their retort, can you measure gratitude? For myself it doesn’t matter if I measure it, but for the rationalists I must find the measure. Or maybe not, gratitude is something you must find for yourself…