It has been a while. I will be conducting an IT experiment this summer. I am a big fan of Windows and especially Adobe software for making media. I have been using Adobe Production Premium for years to create films, vodcasts, packages (PKG), podcasts, 2D animations, posters, graphics for print, press and web. However, the time comes when an organisation needs to reinvest or update software and if you require volume licensing like in education then the cost to retool can get very high.
Our IT lead checked on volume pricing to upgrade what we have and the price per seat was approximately $300 CAN. I hope we go ahead with an Adobe purchase but we cannot afford annual subscription pricing unless there is ongoing support from Admin.
We have been playing around with open source software for a number of years and the distro we like is Ubuntu. With a little bit of research I have created a list of communication software that might meet our media production needs; Blender, Kompozer, Lightworks, Gimp, Synfig, Pencil 2D, Cinelerra, JACK Audio Connection Kit, Audacity, Bitwig Ardour, Pro Tools First and WINE.
The experiment : create a 100 % Linux media production system. What is the down side? The time it takes to install all the disparate apps and the hope they do not have annoying download conditions and more important the time to learn all the new software. It took years to learn and generate good workflows in Adobe Production Premium and how long will it take to generate industry standard content and memorable workflows using open source software. Lastly, it will be interesting to see if the skills learned producing media in these new environments will transfer well to industry standard applications like Adobe. Time will tell as the experiment begins.
I decided in early August like millions of other people around the world to take advantage of Microsoft’s offer to upgrade a desktop and laptop to Windows 10. The journey can be challenging if your hardware is 5 to 7 years old.
On the laptop, I was not able to navigate using track pad because I had to update drivers. Fortunately, I found drivers on the manufacturer website and installed them from a flash drive shortly after boot. The other problem that I had with the laptop was high disk usage 100%. I chatted with Microsoft Answer Desk and checked numerous online forums to find a solution. I think there may have been a worm or corrupted user account that was causing the problem. By creating a new local account with Administrator privileges, I was able to delete the corrupt account and the disk usage problem was solved. There continues to be an issue with the new Edge browser and disk usage but I’m sure that it will be resolved in the near future. I find MSIE11 and Chrome are the browsers of choice for now on Windows 10.
On the desktop, I used Microsoft’s Media Creation Tool (MCT link) to complete the install. In addition, while completing the installs, I was able to revisit some advanced computer functions to see what is going on “under the hood” of Windows. By typing Windows + X or R we can fire up command prompt or access the registry to optimize Windows 10 install. It felt good to get back to DOS and load up Services (ex. Services.msc) and manipulate some settings using regedit to turn on or off some memory hungry things.
I used Task Manager (Ctrl+Alt+Del) to perform some basic diagnostics, chkdesk to test integrity of hard drive prior to install and so on to repair any issues. During the time I was reading online forums, I learned about services like BITS (Background Intelligent Transfer Service) , Superfech and Windows Search that can have an impact on older hardware.
Finally, I explored the new DOS world of Windows 10 called Powershell. This service is like DOS on steroids and it should make things like batch files rock in the near future. The upgrade process was challenging at times but the journey was worth it and I look forward to getting more familiar with Windows 10. Next, I will explore the networking capabilities of the operating system to see how it works with P2P (ex. Homegroup), domain and freeNAS.
Topic or Learning Goal: Create a PC game using Java
Intro: The goal this summer was to overcome my fear a game programming. I teach Python and Java and I wanted to develop a “How to develop a PC game” resource guide for teachers and students. The task of breaking down, chunking or scaffolding the software design/development process (SDP) for programming a PC game can be overwhelming. I discovered that a “blended learning” approach worked best; reading articles on game design, researching game programming concepts like collision and physics engines, watching YouTube videos (ex. Mr Java Help) and reviewing tutorials featuring source code and OOP design (ex. Zetcode). Students play computer and video games and that creates an authentic learning opportunity for computer science educators. Some will be motivated by the “fun factor” to overcome complexities of programming a game.
I have spent a lot of time reading the source code of other game programmers. By restricting the study to programmers who use object-oriented design, I began seeing some patterns that may be helpful to teachers. I recommend starting with the Java 2D games tutorial on Zetcode.com website. I would spend time studying and reverse engineering code for Collision detection (Alien and Craft space shooter game) and Snake (similar to Nibbles). Next, I would take the time to watch all of the Java 2D side scrolling videos on Mr Java Help’s Youtube channel (https://youtu.be/NIUKHHVF9ek ). He does a nice job of demonstrating the coding skills required to assemble a game. A good task for teachers and students is to use the source code and Mr Java Help’s comments during the video to learn and to insert comments throughout the program listing to document the learning (ex. he mentions how casting (polymorphism) is used in graphics (g => g2d)). Students should take notes while watching the video! A metacognative approach to video study could help students chunk the learning.
Game design involves programming objects, GUI, media assets (ex. graphics, audio files, sprites), events, collision detection, perhaps the use of a physics engine and other design elements. I believe a teacher can introduce some of the gaming concepts to a whole class but may want to explore the use of project-based learning (PBL) to explore game design further with the group.
Next, I started to Google the Internet for “game design templates” and not surprisingly people are using said tools to organize the software design process. Game programming offers a rich learning experience for teachers and students and can give them the confidence to approach other challenging programming tasks (ex. Big Data, analytics, connecting the mysql databases using Connector/J or Derby).
Finally, it is more important to try than to succeed. Are we sheep or goat programmers (ex. double hump)? The game may not work or the students may get frustrated with the levels of abstraction but it is the journey that will support growth and ensure that students have a positive experience with coding. It can be a nightmare to troubleshoot code if it gets too involved so perhaps we need to consider “requirements” for success. Maybe a student will get a Level 3 for moving around a sprite, a Level 4- for demonstrating collision, a Level 4 for some clever innovation and a Level 4+ for demonstrating talent in game design. Talent can be defined as getting it done. A gifted programmer has the talent to juggle many balls at once (ex. OOP design, GUI, interface, sprites, math theory in game design (ex. collision), threads, compiler nuances and so on) and can complete a program.
– What is the world (ex. background or map)?
– What characters or sprites are required? Can we use Alice to introduce game design?
– What is the game play? How do we score? How do we achieve the next level? How do we keep the user engaged?
– How does collision work in the game? Do the collisions trigger scoring, reduction of health or response to world?
– How do the events of keystrokes and mouse movements affect animation (ex. dx, dy)?
– How do we use code to build the GUI (ex.frame, panel) to support the game? In most of the games the coders use Frame, Board and sprite classes to fire the game. The Board class contains the panel and most of the widgets that we see when game is running. What programming structures are used to manage animation (loops, decision, recursion)?
– Use the game design unit as an opportunity to discuss the software development process (SDP) and software development life cycle (SDLC).
– How is designing a game similar to writing a movie script? How can we shape computer science learning to address all learners (ex. left vs right brain, males and females)?
It has been interesting learning to use Google Classroom and the benefits of Google Drive. The flash drives have been eliminated and media workflows have been improved. However, I want a network drive to store media assets with read-only permissions and another drive where users have read/write permissions for rapid collaboration.
Therefore, I am looking at freeNAS software to help me create these 2 network drives. Everything is going well so far. My rig features a desktop with Asus M3A78-CM mobo with 8 GB RAM, 3 @ 80gb sata drives and FreeNAS 9.3. However, still trying to figure out how to set permission on Windows CIFS share drive.
Hello. Website and blog have been down since August. Looking to refresh design of website and to develop some content. I’d like to explore podcast design and video streaming. Rather than a “Live to Tape” session that we associate with linear editing I’m embracing a digital workflow that is “Live to Stream”. What are some of the technical considerations for producing good video streams? How can storytelling and content streams improve the impact of the media?
The toys are everywhere. Having some fun with my new Ubislate 7Ci Android tablet. Just need to figure out how to connect a keyboard to this device. Apparently, the tablet does not support Bluetooth. However, it does have a microSD and micro USB port.
Now is the time for all good men to come to the aid of the party. Now is the time for all good men to come to the aid of the party. My daughter, the 1 year old, is trying to add something to this blog entry. I will need to work hard to keep her away from stuff. What are your thoughts on thoughts? I spend some time reflecting on Pope Francis’ tweets.
Actors on TV are way too intense and the stories are superficial attempts at hyperbole. All the commercials try to be funny. I guess that I should not complain. My child’s maraca starts playing in the background which nearly stirs me into a rage, only to subside and fade into acceptance.
There is some new music that I love but I don’t know the artist which makes me sad. Just watched 2014 Super Bowl halftime show and it was awesome. Better than the game. It is 29-0 at the top of the 3rd quarter and I’m starting to cheer for the Broncos because they are losing.
I’m frustrated typing on the BB mini keyboard. How do you insert images into Word to Go? What is the purpose of the F1 to F12 hotkeys? Why do I think that I can maintain a blog when I fail to read anything beyond online newspapers? The muse is somewhat limited and it needs to be nurtured by other artists. This is an attempt at automatic writing which I learned years ago is a strategy authors use to overcome writer’s block.
You may be wondering about the first two lines of this blog entry…. My mother was a secretary and she used to warm up her fingers typing this line several times before getting into a typing task on the old Underwood. Oops. Another turnover by the Broncos. Seahawks have possession at 5:09 in the 3rd. Wow. Nice catch. It’s 35-0 and the Seahawks are rocking Super Bowl 48.
Horray! Manning makes a nice pass to the end zone and a better series of catches make it 36-8. The comeback begins baby! I’ve been chatting with a number of people using IM+ during the game and it is a festive time for many.
Just another evening on the Playbook and enjoying a football game.