Just when you think you know it, you relax a little and the concurrency monster is back with a vengeance! This is a true story...
Once upon a time there lived a lecturer who taught concurrent programming. After years of training and practice he wandered the concurrent landscape with pride and confidence. His offerings to the programming gods had granted him safe travel, and he ventured forth with his new batch of students aiming to get further into the landscape than ever before.
The adventure was going well and one night the lecturer started examining the progress of his young apprentices. While many were doing well they needed a small challenge, something to test the tools they had created. Their latches, semaphores, barriers and exchangers all looked promising, but had remained untested.
"The end of the trek is near, so the challenge must be quickly created." the lecturer thought to himself as he studied their tools. Consulting the dark concurrency forces, he searched for a suitable challenge. Using a cauldron of dread he combined Wing of Interrupt, with Heart of Thread, and a touch of Join dust. In his rush he failed to see the beast that was being created... All day and all night the potion brewed, and on the following day he offered it to his students.
Each student took the potion without question, after all he was the lecturer. The potion was slow, allowing the lecturer to depart before it stirred. Initially the tools held the beast at bay, the Latch stood strong, the Semaphore withheld... then the Barrier was broken, the Exchanger collapsed, and the tools began to fall one after the other. Valiantly the students poured over their code, inspecting it line by line, trying to find the cause of this beast. Their efforts were misguided, none could withstand the beast for it came from the potion, not their code. The concurrency monster leapt from the lecturer's code and roared into existence.
The howling of the beast woke the lecturer with a jolt. Rushing to his students side the lecturer began looking for the cause of this mighty beast. Confident in his code he re-examined the students' code, but one after the other the code was safe. It handled the interrupts, and the many threads, but failed to meet at the join. There could only be one source for this beast... HIS code!
Stepping up to the code, the lecturer went one on one with the beast he had created. The beast was strong, and would not go down without a fight. Code was flying here and there as the beast and lecturer did battle. Minutes later the lecturer rose, covered in code, but triumphant. Returning the tamed test to the students, he stayed around to see if the beast woke again.
His caution was warranted as the second round of tests woke the very same beast. His battle had been in vain. Mustering the last of his strength the lecturer began to mind meld with the beast. Inspecting its structure and form. Searching for its weakness. Then it sprang to him. The timed methods, that can bring these tools back to life. With this new knowledge he reentered the fray and after a few hours had the beast cornered. A quick TryAcquire followed by TryExchange, and the beast went down begging for mercy. Then the final death blow, TryArrive.
With the beast gone (for now) the students returned to testing their utilities. The latches held, the semaphores counted, the barriers stayed strong, and the exchangers once again began to exchange. A cautious peace returned to the world of concurrency. The lecturer once again went back to roaming the concurrency landscape. But the scars from the battle causing him to limp slightly...
So when you next venture into the world of concurrency and pray to the Programming Gods, remember to make an offering to the concurrency monster... just in case.
Friday, September 29, 2006
Beware the concurrency monster
Posted by
Andrew Cain
at
4:56 pm
5
comments
Wednesday, September 20, 2006
Pollution Death
I have now read the Inconvenient Truth and seen the Movie. I have also read a number of other books on this issue, and feel a little informed. If you want to hear about what James Locklock thinks about this you really need to hear this program from Radio National Science Show. This is a good program, in a really bad way.
Why pollution Death? Read Seth's blog, basically "Global Warming" is too fuzzy and friendly...
I am not quite at despair yet... I believe in putting my money where my mouth is, my actions so far include:
1: Green energy
2: Carbon credits to offset gas usage
3: Energy efficient appliances and light bulbs
4: Fuel efficient car
5: I walk to the train to go to work, unless I really need to drive (currently 1 day a week when I have late classes)
6: I vote and there is nothing more important than this issue
7: Letting others know (22 of us went to the Inconvenient Truth)
8: Turn off appliances I am not using (at the wall, no standby)
Future plans:
1: Buy carbon credits for car and motorbike
2: Buy carbon credits for purchases
Posted by
Andrew Cain
at
12:21 pm
2
comments
Friday, September 08, 2006
Migrating to Mac: Part 5: Mac Apps
Well I have now been using the Mac for a while, and the great thing is that I keep learning new things and finding new and interesting apps. Today I was looking at how to stop Expose trapping the F8 - F12 keys in Parallels, and I came across this blog on Mac apps for people switching from Windows. Its a really good read and I have installed many of the apps that are mentioned. I have also found the following apps quite useful when switching to the Mac.
(Clinton provided the answer for solving my Expose problem... hold down the Apple key when pressing the F key.)
Firefox
Muvo Helper
Menu Meters
xCHM
Aquamacs
Booxter
Poseidon for UML
I needed a tool for drawing UML diagrams, and this did the trick. It is a little clunky to use, though I haven't spent much time with it at the moment. This is a full UML tools keeping track of the model, so with some reverse engineering support it should be good. There is a free community edition.iTerm
Posted by
Andrew Cain
at
10:40 am
0
comments
Monday, September 04, 2006
Documenting C# Projects
Playing around with .NET 2.0 and Visual Studio .NET 2005 has left me asking what do I need to communicate with my designs. The class diagrams in Visual Studio are very elegant, and remove my desire for creating UML class diagrams once I start playing around with a solution. UML class diagrams are great for modelling problem space, and thinking pre-solution, but one I start thinking solution I am now heading to VS for my diagrams.
There are a few things missing from the VS diagram that do cause me some headaches.
1: Dependency. It would be great to be able to show dependency type relations in the diagram.
2: Lack of diagrams to represent object dynamics.
I have voted on the first item on the MS feedback regarding VS.
On the second point I am still using UML diagrams to describe these. Visio has been my UML tool in the past, though it is challenging to use. Today I started playing around with Poseidon for UML. Looks like it has potential, but it does not support reading in class details from C# code... Examining the list of features it does support shows XMI, so I started looking for a tool to convert my C# code into XMI, and I found the following freeware. The DotNet Assembly to XMI Creator 2.1 tool is able to convert .NET assemblies into XMI according to its documentation. Unfortunatly the product does not support .NET 2 assemblies... nice try :(
An open solution to this would be nice... I have created a quick open source library to do this called xmi4dotnet. I have hosted it on google to allow access to the source. I will also setup a game for it at sometime on SwinBrain. This tool allows you to export xmi code from .NET assemblies. It uses the Reflector tool to examine the model and loads into this tool as an addin. It exports all the different .NET types as well as fields, properties, etc. I have tested the export and the xmi can be loaded into Poseidon. Try it out and let me know any changes you want made (use the bug tracker on the google code hosting page).
Posted by
Andrew Cain
at
4:45 pm
0
comments
Microsoft Recruiting in AU
Microsoft is recruiting developers in Australia again. If you are finishing your degree this year, or have already finished, you may want to apply...
Posted by
Andrew Cain
at
9:30 am
2
comments
Monday, August 28, 2006
Open Day Fun
Yesterday was Swinburne's open day, and once again this ment a day of answering questions about our new B.Sc. (Professional Software Development) degree. I dont know how many people I talked to, but I didn't stop all day. The two presentations I gave were great fun, and I hope people were informed as well as inspired by them. We had several give aways, including atomic magazine, and fun stuff like pens and flashing badges. For me open day was a great success. Lets hope the prospective students did as well... I look forward to seeing you guys next year if you did :)
Posted by
Andrew Cain
at
8:33 am
4
comments
Wednesday, July 19, 2006
Migrating to Mac: Part 4: Parallels
I have now been using the Mac for a number of weeks, and have been enjoying the experience. So far I haven't had any real issues that I haven't been able to get around. Setting up the printer was the hardest task...
I am using parallels desktop for Mac to allow me to run Windows while working on the Mac. Initially I also installed Boot Camp but I found that I just didn't use it... So after a few week I reclaimed the space from Boot Camp and now run purely with parallels.
There are a few things that really help make the Parallels experience even better. These are the things that I have done so far, and I am open to new suggestions.
1: Install unsanity's Application Enhancer and then get the PD Tweaker. This "tweaks" Paralells Desktop and I have found helps smooth the experience of using it and other applications at the same time. If you are interested you can read about this at MacOS X Hints
2: Initially I was using the bridged network adapter that comes with Paralells. This has the unfortunate (and fully intentional) problem that it exposes the virtual machine to the network. This causes me some problems as the network admins here tend to block access to "strange" machines that appear on the network. Also, I wanted to be able to access the host machine from the Windows machines. As I move between networks the real IP address of my machine changes, as will the bridged interface. To avoid this I switched to host only access, and then routed connections using the Mac's internet sharing.
Getting internet sharing working takes a little work if you also want to firewall your machine. If you follow the Mac's advice it will have you installing the Personal Web Service, and openning ports to the world... You can get around this by configuring the firewall yourself. A script on MacWorld shows how to configure the firewall using ipfw. With some modification you should be able to change this script to provide Parallels access to the network.
4: Setting up a source repository was next on the list. With the host now being accessible at 192.168.2.1 I have a fixed point to access... Step 1 is to get the sshd running to allow remote login to my Mac. This turns out to be as simple as clicking a button. In System Preferences goto the Sharing section and in Services turn on Remote Login... and your done.
Now you will be able to access your machine both from inside Parallels, but also from the outside world. To turn this off edit your Firewall script and alter the rule that allows any access to destination ports ssh, http, and https. Change the any to $inrange1 and your done. Re-run the Firewall script and check access from Parallels and from an external machine. With ssh access the next step is to setup cvs.
Setup the cvs repository on the Mac and imported a test module. Now to access it from the PC. WinCVS was already installed as was Putty and PLink, so I created a new key file and set it up to allow login using Pageant. Connecting to cvs on the mac was then as easy as entering the new cvs root and checking out the test module. I also have Tortoise installed, but cant get it to connect using the ext protocol anymore...
Posted by
Andrew Cain
at
1:34 pm
3
comments
Friday, June 16, 2006
Migrating to Mac: Part 3: Tale of the two Syncs...
One of the things that I knew would be an issue with my new Mac was syncing me PDA. I have an old O2 XDA II Pocket PC (Phone Edition). Anyone who has used a PocketPC Phone knows that the only way to use it is with a PC. Keeping your contacts and appointments synchronised across the devices is important. Getting something to sync the Mac with the PDA was critical.
I decided to setup a sync program as one of my first tasks. So after installing Office 2004 and copying my e-mail across I started searching for a solution. I found that there are two main solutions PocketMac and The Missing Sync. From my initial reading PocketMac appeared to have been around longer and had a few extra features. So I paid, downloaded and installed PocketMac.
PocketMac was a little tricky to get working correctly and does not work with USB on the new Intel Macs. Their web site indicates that it is a Mac problem that they have to work around, I should have realised something was wrong when I read this... Anyway, I eventually got it working with Bluetooth. It worked ok for one day, and then... it stopped working. I'm not exactly sure what went wrong. I was in the process of installing a variety of other programs so what was conflicting with what was not something that I could work out. I followed PocketMac's troubleshooting advice and eventually, after about 5 hours of reading logs and experimenting, I eventually gave up and posted a support request. I posted their trace report, and made sure that I outlined most of what I had tried. After a day I got back a post of their "Dont use USB, use Bluetooth". So they didn't even read any of my help request. I replied, and after another day they esclated it to their next support level. I waited, and waited, and well nothing. After a week and a half I gave up on them and asked for a refund. Looking back, their product was not really well polished, and their web site is not very professional. So yesterday I purchased The Missing Sync for Windows Mobile. After such a bad experience with PocketMac I prepared for the worst. Their web site has a section on migrating from PocketMac, which I thought was interesting. I followed their instructions and rid my Mac and PocketPC of their software. With this done I set about installing The Missing Sync. The install went smoothly. I plugged in my PocketPC and started the Sync. A connecting overlay appeared on screen and the PocketPC tried to connect to the Mac. This was a nice addition, the status shows which state the connection is in something that wasn't provided by PocketMac. Anyway the bad news at this point was that it failed to connect... I was not overly concerned as in the attempt to connect with PocketMac I had played with many settings on the PocketPC. I renamed the PocketPC for sync purposes then tried connecting again. This time everything worked. I setup the partnership which overrode the PocketMac partnership on the device. The sync was a little slower than with PocketMac. However, it works and provides feedback on where it is up to which is always good to see. The Missing Sync program is far more polished, as is their web site. I cannot comment on their support as I haven't needed it. The Missing Sync also connects via USB and Bluetooth, both of which are working fine for me.
Both PocketMac and Missing Sync are able to sync contacts with Entourage, or the Mac Address Book, and appointments with Entourage or iCal. So you dont need Entourage to make use of these.
Note: I didn't try renaming my PocketPC with PocketMac. This may have corrected the issue I was having. However, I dont know and I'm not going to reinstall it to try.
Posted by
Andrew Cain
at
8:56 am
2
comments
Wednesday, June 14, 2006
Migrating to Mac: Part 2

Having received my Mac the first task I had was to migrate my e-mail, contacts, and appointments. On my notebook I have been using Outlook 2003, so the plan was to switch to Microsoft's equivalent program on the Mac. The first issue was finding what that product was called. I had incorrectly thought that it would still be called Outlook... With some googling I became familiar with the Entourage product, the mail/contacts/appointments program in Office 2004 for Mac.
As we have licenses for Office for Mac I installed the suite which was a very pleasant process compared to the same process on a PC. Insert the CD start the installer and the hard work is all done. Before I could get up the installer was finished. Having used a PC for so long I am used to the hours of waiting while office installs and registers everything...
With Entourage installed the next step was to migrate my data from Outlook 2003. Cant be that difficult I thought to myself, after all it is Microsoft -> Microsoft. Open Entourage, which looks great its not just a simple port of Outlook, and then start looking for import. Entourage can import mail from csv files, mbox, earlier versions of office for Mac, but not any of the Outlook for Windows products. Ok... Goggle time.
There are several ways of performing this migration.
- MacUser has a very convincing article noting that Microsoft has released a converter. When you get to the Microsoft site you find that it can only import from previous Mac versions.
- mvp.org has a page that lists a few options including using an IMAP or Exchange server neither of which I had access to. They also offer links to some scripts to do this. These seem overly complex for the task in my opinion.
- There is a product called O2M. For $10 this is a good option. It can transport mail, contacts, appointments, etc. from Outlook to mbox, iCal, etc formats that you can then import on the Mac. I used the trial version but was too cheap to purchase it for the one off transfer of data.
The approach that I used is explained by Dave Riches and also on the O'Reilly Network. This process involves converting the e-mail in your Outlook PST file into individual mbox files that can then be imported into Entourage.
The process that I followed best matches Dave's process.
- Install Thunderbird, which has the ability to import PST files and internally it stores its mail as mbox files.
- Copy files to Mac
- Drag mbox files into Entourage
The process is simple enough except that I arrange my mail into a hierarchy of folders. When you import your mail into Thunderbird it will create a folder for each mail folder in Outlook. Each of these folders then contains its subfolders and a mbox file with the mail from that folder. There was no way that I was going to drag all of these individual files into Entourage. However, the files are now just simple text files and can therefore be altered via the command line.
The first thing that I decided to do was to compact some of my folder hierarchies. I did this at a Command Prompt on my Windows machine. The command to do this is:
(for /F "delims=" %i IN ('dir /s /b *.') DO @type "%i") > NewMailFile.mboxExecute this command in the folder that you want to compress the mbox files into. In my case I kept a folder with all of my internet site subscription e-mails (like blogger, feedburner, bloglines, etc). I have subscribed to many sites! I executed this command in the folder containing my "Internet Sites" mailbox, compressing these into a single mbox file.
At this point I copied all of the mbox files to my Mac. Thunderbird does not add an mbox extension to its files and unfortunately Entourage will only import them if they have the mbox extension. The following command run at the Mac Terminal, in the directory where you copied your mail files and folders.
find . -type f -print -exec mv "{}" "{}.mbox" \;With this done you can now drag each of the mbox files into Entourage. The import is complete.
With my mail in Entourage I then proceeded to transfer my contacts and appointments. As I use a PDA I did this by syncing Outlook with my PDA and then syncing the PDA with Entourage. In order to do this I purchases PocketMac Pro. Once I got it installed and followed the instructions it synced all of my contacts and appointments. PocketMac itself worked for a couple of days but lately it has stopped working. I'm not sure what else I have installed that could cause this problem and the PocketMac support is very slow. If this is not resolved soon I am going to try The Missing Sync for Windows Mobile, v2.0, unfortunately they don't have a trial version otherwise I would have switched sooner. (If anyone has any advice on this let me know...)
Posted by
Andrew Cain
at
9:06 am
4
comments
Tuesday, June 06, 2006
Migrating to Mac: Part 1
Recently I decided to get a new notebook. My current notebook is a Toshiba S1 with 1GB RAM and a ATI Mobile 9000 card. I needed to upgrade for several reasons. Firstly I need more RAM. I do distributed .NET development and presentations on the notebook and I want to run multiple Virtual PCs at once. One running a web server, another for the app server and one for the database server. With 1GB of RAM I can run one virtual machine but the others are really pushing it. Secondly I want to play around with Vista, I need a DirectX 9.0 graphics card. With this in mind I started looking for a notebook to meet my needs.
Needs:
- Presentations and office document creation (PowerPoint, Word, Excel)
- .NET development (3-Tier demonstrations... with 3 tiers)
- DirectX 9 capable (for Vista)
I have been reading about Apple's MacBook Pro and this started to look like a viable alternative. Apple offers a nice package, well thought out design, good hardware spec, with the capability of running both MacOS and Windows. Other notebooks offer similar features, but not the entire package.
I spent some time finding out the capabilities of the MacBook in relation to my requirements. A quick watch of the Fast OS Switching and related videos appear to demonstrate the ability for the MacBook to meet my most important requirement, multiple virtual machines. The main issue with these videos is that they are usually running only a web browser in each virtual machine. I need to do more. Based on the machine spec I believe that it will be capable of meeting my requirements.
So the Plan became:
* Get a MacBook Pro 2.16GHz with 2GB RAM (and faster disk).
* Get Office 2004
* Migrate Outlook to Entourage (Office 2004's equivalent to outlook)
* Install Parallels
* - Setup multiple virtual machines to enable distributed .NET development
* Install Boot Camp
* Install Vista in VM Ware within XP
This plan has recently been put into action. I have now received my MacBook Pro and have started the migration process. A few issues have arisen since I received the notebook. I need the following:
1: a keyboard that supports both Mac and Windows.
2: to be able to sync my PocketPC with Entourage
3: to be able to sync music with my Zen Neeon
The keyboard issue was one that I had not thought of before. At home I used a Logitech Cordless MX Duo that has drivers for both Mac and Windows, so problem solved. I will cover the other details as I go.
In the next part I will look at migrating my contacts and mail from Outlook to Entourage.
Posted by
Andrew Cain
at
7:26 pm
3
comments
Tuesday, May 30, 2006
Thinking in Objects
Finally got around to starting the new Object Oriented Programming subject today. I have now selected a text that I hope will work out well. The Object Oriented Programming subject is going to use C# as the implementation language, though it will focus on Object Oriented Programming and design rather than on the language and related libraries...
The book I am going with (and yes it is too late to change now) is "Object Design: Roles, Responsibilities, and Collaborations". I have skimmed over most of it and now read chapter one in detail. It looks really good. The initial focus is on understanding design concepts. I think this is a good start. For the first lecture I have created a "Everything C#" followed by "Building programs with objects" presentations. The first is a bit shock and awe, covering most of the C# syntax, but that needs to be done somewhere and I want to get it out of the way so we can start on the real material. The second presentation looks at what objects are and how we build programs using them. I am happy with how it has turned out so far. Another Beyond Bullet Points success, I hope.
Week one is mostly out of the way. I have found an online tutorial for learning C# so that will be the lab work. The structure for the presentations is out of the way, and I have the text to fill in the design gaps that I am leaving. Its great being able to focus purely on objects knowing that these guys will have some idea about what programs are and their internal workings.
More to come as this unrolls...
Posted by
Andrew Cain
at
5:35 pm
3
comments
Tuesday, May 23, 2006
MacSaber
The real reason for me getting a MacBook is now out!.
Posted by
Andrew Cain
at
9:23 am
3
comments
Blogging as a PSD
So you are a uni student now. Why should you blog? Blogging is a great way of letting others know about the cool and interesting stuff that you are doing. Found a cool web site, got some new hardware, done a great assignment, played with some new tech, want to comment on your lectures... All of these are great blog topics.
Keep your blog reasonably professional and it can become part of your online profile that you can use in your resume. Shows employers that you are interested in IT. When you review something new upload a review to your blog and it will also show that you are capable.
Get a blog now, and let others (me included) know about it. I'm ready to subscribe...
Posted by
Andrew Cain
at
8:07 am
3
comments
Thursday, May 18, 2006
The Security Guy
I have attended a number of presentations over the last week, and one has really stuck with me... Unfortunately not because of how good it was. The presentation was about the current state of internet security. The person was really passionate about identity theft, but was way over the top with his message. The result was that anything of value was lost...
My recall of the presentation goes as follows:
You use fly buys - wow... Don't use fly buys
You use internet banking - wow... Don't use internet banking
You don't encrypt your hard drive - wow...
don't leave your computer on...
don't access the internet
You use internet explorer - wow... Don't use IE
You use office - wow don't use office
(now let me go a little further...)
don't use a computer
don't cross the road
don't drive a car
don't carry cash
don't deal with banks
don't deal with people
Become a hermit and remove yourself from society
That is the logical extension of the presentation...
Now unfortunately there was no real advice. There was nothing of value that you could take away from the presentation. In a work environment many people use Office, they are going to need to. Saying don't use office is not going to help. Saying, office has a large number of issues, these are the main ones, this is what you can do to avoid many issues, these are the risks that you cant avoid, etc. That would be useful, you can take something away from the presentation. Just saying 'don't use it' is really a waste of time. I use it every day and I'm still here...
If you give a presentation think about what your audience is taking away. If there is nothing for them they will not be satisfied.
Posted by
Andrew Cain
at
12:17 pm
5
comments
Tuesday, May 16, 2006
Media Center
I can now say that Media Center has been a real success. Last week Alison said that we should get "something" so that we could connect the TV in the bedroom to the Media Center. Life with standard TV is no longer acceptable. The next part of the conversation went "We should get another 360 for the bedroom", "Yes ... something like that". This comment has been strongly denied :)
I will look into the cost of getting another Media Center extender, but if the cost of getting a 360 drops then that will be the desired device.
Big ticks for media center.
Posted by
Andrew Cain
at
5:21 pm
0
comments
Friday, May 12, 2006
XBox = Sport
Microsoft and NewsCorp are banding together to create a professional gaming league...
"News Corp will aim the big guns of DirecTV, IGN Entertainment and Fox Interactive Media at the project, which is likely to glorify Microsoft Xbox games"
Posted by
Andrew Cain
at
8:27 am
2
comments
Tuesday, May 09, 2006
My first step toward becoming a pod person
Well I have asked for a MacBook Pro and even before I get it I'm thinking how I can use Mas OS X rather than windows for a number of things... Get Office for Mac, Free Pascal works, get the mono c# compiler. hmmm so what will I use windows for?
Well I still love Visual Studio. So Parallels can host a virtual PC for me with Windows and I'll run Visual Studio in that as I need to. Thats what I do at the moment on my PC anyway (except with Virtual PC rather than parrellels).
With some luck I'll get approval and start looking at dual booting with Vista soon!
Posted by
Andrew Cain
at
4:54 pm
6
comments
Talents
I have been thinking about people's talents and their study choices.
If you are talented in some area, and you enjoy it, should you seek to advance this or study other areas which are more "in favor" with industry at the time?
As a faculty of ICT we have been blessed with many students lately. Most of these had little talent or interest in ICT. (I'm sure that they all have talents, just not in ICT) These students obviously thought that it was better to study something that is in favor than to study what they are good at and interest in...
In my opinion I would always choose to build upon my talents than to go with current trends.
Having said this, I haven't always done this. I studied a Business/IT degree even though my real talents and interest lay in software development. At the time I didn't realise what I was doing. The degree that I studied came with a scholarship and the money helped make a real difference. I also didn't realise what I was missing. No one ever bothered to say "Hey your good at this. Did you know that there is all this other stuff that you may also be interested in..." I ended up doing well in my degree and getting a job that I hated. Being a proactive person within 6 (painful) months I got myself another scholarship and went back to uni to learn as much of "the other stuff" as I could. The only problem was that I was now doing it on my own. If I had my time again I would choose to do a technical IT degree, and do IBL to get some extra $.
Anyway the question remains, should you follow your interests (and talents), or study areas which have job shortages and hope to build interest and talent? What are your thoughts on this?
Posted by
Andrew Cain
at
11:59 am
8
comments
Monday, May 01, 2006
Late Weekend
Wow, am I tired. This weekend was a struggle. Its good to be back at work.
Friday night I decided to extend the WinGraph Pascal unit to include the ability to load and draw images on the screen. Finding the code to load bitmaps in the Win32 API is much more difficult than from the .NET RTL. Once I found the code getting it to work didn't take long, though I did make a few really simple mistakes (like passing b then a to a procedure rather than a then b) that took a while to find. Once I got the code basically working I modified the MazeGame and made a little graphical version. Sleep - 1
On Saturday we decided to buy a new TV Tuner and HDD from the Media Center PC. I remember reading somewhere that Media Center can support upto 3 TV tuners, so we planned to get the Fusion Dual tuner and a 300GB HDD. The purchase went ok, and we spent the next part of the day shopping for my brothers birthday present. Got home around 4ish and thought that I would install the HDD and TV Tuner quickly... Big mistake. Basically installed the TV Tuner, and HDD (at the some time) and booting windows failed. My first thoughts were, "damn TV tuner card". Removed the card and tried again. Same problems, wouldn't even post this time. Something did not like the new HDD. Removed the other tuner card, and the wireless network card. Basically the same problem. Got a little further then the machine froze. Change cables, change SATA ports, repeat, repeat, repeat... Anyway, at 6 we went to my brothers party which was great fun. Didn't even think about the PC for a few hours. Got home about midnight and started it again. Thought I had it working, formatted disk (almost 1hr). Then post failed again... Crap. Finally gave up on HDD.
Next trick was to install the tuner. Which turned out to be easy. Plug in, follow instructions. All working in about 1/2 an hour. Go into Media Center, turn them on and get the error "Select one or two tuners only". ARGH... Upto 3 turns out to mean "2" outside US, or "3" (1 digital, 2 analog) in US. Bummer. I could have saved some $$$ and just got another the same as the one I had. So at 3:30 I head off to bed.
Sunday I went to take back the HDD. The guys I got it from check it and it worked ok in their machine. Not much good to me, but they suggested a bios update. So back home update bios. Same problem. Install original drivers, same problem. Install latest drivers, same problem. Back to shop with PC. The technician had told me "Bring it in and I'll have a quick look at it.". When I took it back he wanted $35 to have a quick look at it... Stuff that. There is nothing left for him to change. The customer service rep and technician were quite rude, and unhelpful. I now know why you should use MSY, everyone I know who has had a problem with their equipment has been well treated. Anyway after a little arguing I got them to exchange it for another brand of disk. "There is a 10% repacking fee", fantastic, the customer service here just gets better and better. So I ended up with a 250Gb HDD and a little change + some happy memories. I had always wondered why the shop had so many "Email complaints to ..." signs around the store. Now I know.
Spend the remainder of the day driving around shopping for other things. Finally got home about 6:30pm and installed HDD. Amazing (sarcastic), it worked. First time, no problem. I had some drivers issues with the Tuner card, which I reinstalled. So everything is working well now.
Last thoughts, don't shop anywhere that has a prominent "complaints" signs. You may have to queue for a while, but MSY is worth the wait.
Posted by
Andrew Cain
at
12:56 pm
2
comments
Tuesday, April 25, 2006
XBox 360 + Media Center
Wow am I loving my 360 and Media Center PC. This year for my 30th birthday I got an XBox 360, my birthday is in February and this meant a long wait for the actual machine. During this wait I did some research on what you can do with the 360 and I discovered Media Center. Basically this setup allows me to store my media on the PC and stream it to the 360 for output.
So how has it been? Well having had the 360 for a month now I can safely say its been as good as I had hoped. Most of my music is now recorded in MP3s on the PC, allowing it to be shared between Media Center, Media Player and iTunes. The music plays perfectly on the PC and 360, as well as on my Zen and Alison's iPod. TV watching has also changed. I now try and pre-record everything that I want to watch. The TV guide (once setup) allows Media Center to automatically record all of the shows that I watch. I also have the digital photos on the Media Center PC, and am currently playing with setting up albums, and seeing if I can add audio (you can play these together manually, I want to see if there is an option for creating and saving this)
Games for the 360 have also been great. I got the VIP pack with Perfect Dark Zero, but I haven't played it much, the other games I got are far too addictive. Oblivion is my number one game at the moment, and I have clocked over 30hours game play already (on one set of batteries for the controller as well, you can buy a lot of batteries for the price of the recharger kit...). I still feel that I am only just getting started with this game. Every time I play it feels like such a huge world, great game.
The other game I'm playing is Need for Speed Most Wanted. After hitting 30hours on Oblivion I thought that I should play this a little, and have been hooked on it since. Love the graphics and game action. Basically it was a toss up between NFS and PGR, and I chose NFS mainly due to price. It was more expensive and there was an "all games $75" sale, so I saved more by getting it. Why not both? I'm an academic, so $ are not in great supply :(. Main problem with my choice is that all the others I know get PGR and not NFS... No big deal, I am loving the game. Just hit #9 on the BlackList and the races are starting to get really challenging. Should be good.
Problems? Well I have had some. The 360 has crashed on me a couple of times in Oblivion with disk read errors, and also in NFS. This hasn't happened so often that I feel the need to take it back, but if it happens more I will be. Other than that everything has been great.
So what's next? Well I need more disk space on the PC for all the media I have. I also want to get some extra tuner cards so that I can record and watch more than one channel at once. Then there is a steering wheel for the 360, and more racing/adventure games. For the moment I need to save some $... but that's nothing new :)
For anyone on XBox Live my gamertag is "The MS Guy"... See you online.
Posted by
Andrew Cain
at
9:07 pm
0
comments
