Daily Archives: April 4, 2012
The five-week class on Software Engineering for SaaS – #Saas_Class is basically completed. The reading and video slide stack presentations for the five chapters are complete, 3 quizzes taken and 4 “homework” assignments attempted. And to quote a cliché: “Someday I’ll look back on this and laugh.” Right now my nearly complete cluelessness with Ruby is quite frustrating. And NO, for those keeping score at home, I will not pass the course. Obviously I did not appreciate how rigorous the statement “Programming proficiency in Java, C++, Python or Ruby” was intended to be.
At the same time, this course was really a vehicle for five larger objectives I set for this study read: SaaS_Daze . So let’s evaluate the experience in context with these larger themes:
- Major Disruption in Education – It is more apparent now after taking the class that the future of education is online and it will be free or low cost. The tools and technology exist to deliver course content, assignments and examinations. In some cases the grade is returned nearly instantaneously. This course required writing code snippets for assignments. The autograding process worked fairly well — though it seemed pretty rigid, extra comments or lines left in for unit testing could result in code that did not pass. What doesn’t work? It probably is my age showing, but I there can be a great deal of value to in-person discussions. Classroom discussions can result in enhanced understanding of the subject. One thing that can improve the online experience, in my opinion, is adding one of the social collaboration apps: Chatter, Yammer, Jam or even StreamWork . My brief experience with apps like this convinces me they could be effective for enhancing online education. Small groups of students in a real-time collaboration stream could be much more useful than the static, asynchronous forum-type application.
- Ruby programming – The course really requires solid Ruby programming experience. That said, there are many things I like about Ruby and Rails. The language blends good aspects from many other languages with a deconstructed, efficient syntax. I suspect that a programmer in Java or C+ would have a far easier time than I did with the programming aspects of the course. I would really like to find a Ruby/Rails equivalent of CodeAcademy. The design of that course and site would be great for learning Ruby and Rails.
- SaaS and Cloud – Since my background is heavy on the technical/infrastructure side of technology, this is the part of the course I appreciate the most. Using the EC2 Amazon Linux VM is completely awesome. The AWS management console cannot be easier to use. Selecting and creating the instance is well documented and painless. The course add-ins and configuration steps had some minor glitches, but the forums provided good support to resolve the issues. The exposure to Pastebin. Github, Ideone and Heroku provided hands-on experience to cloud-based developer tools that are either free or very reasonably priced. During the course several real examples popped up on my radar screen. Luc Stakenborg – AllthatJs.com- provides this demonstration of using Node.js plus SAP Gateway running on the Microsoft Azure cloud platform. This process could have been a homework assignment for the class. I also found this example of running a trial version of SAP’s NSP trial ABAP server 7.02 on an EC2 instance on AWS provided by Steve Rumsby. The knowledge gained from the course made these processes seem quite familiar.
- Virtual Machine and Cloud was covered above.
- E-books in Education – The last area that I wanted to experience was the e-book trend for education. There is no doubt that the cost savings will be very significant compared to hardcopy books and make education accessible to more people. What I did not appreciate or expect was how rich the e-book can be by providing external links to videos, websites and other reference materials. A well-done e-book can be much more valuable to the learning process than the “analog” version. I also appreciate the ability to access the text from my PC and my Android phone depending on where I was at the time.