Windows 8.1, 32bits, 64bits, and MBR or EFI or GPT disks

Laptop-hard-drive-exposedI am no expert, so I am sorry if I say anything wrong. Please correct me, in that case. But I had some experiments installing Windows 8.1 from DVD into a recent Lenovo laptop, and had some issues with hard disk drive and the format it was into.

Well, it seems that recent laptops (and probably also workstations) use a new kind of format to store the partition table of the disks. It is, somehow, related to EFI. So, if you have a disk drive in EFI mode, you will be able to create more than 4 primary partitions (no need for creating an extended one, and then create others inside).

If you try to install Windows 8.1, 32 bits, it will expect a disk to be in MBR (master boot record) mode. If your disk is in EFI mode, your best solution is to delete all partitions (be careful, you will lose data) and create new ones. Probably you will need to delete them all, use the next button and let Windows use the entire disk, or if you want a specific partition schema, cancel the installation, reboot, and with luck you will be able to create a typical MBR partition table.

The other way around, if you try to install Windows 8.1, 64 bits, it will expect a disk to be in EFI mode, and if it is in MBR mode you will need to… you guess it… delete all partitions, and go next.

You might also find gParted to be helpful in this process.

Another interesting information: Windows 8.1 32 bits does not detect a Full HD display.  With the 64 bits display, installation procedure was all in Full HD. Also, the 64 bits was able to pull drivers automatically (namely for wireless). The 32 bits didn’t.

The Moose Slippery – February PR Challenge

Moose Slippery

This February my Pull Request assignment on the CPAN Pull Request Challenge was Ovid’s Module, MooseX::Role::Strict. For me this was a big problem. First because it is about Moose (which I do not use) and then because it is about the Meta-Moose, the way Moose itself behaves.

The idea of the module is to allow Role users to import a role that defines a method that is already defined in the current package/object in a strict fashion. If the user declares that method will be overridden, it will work, if it doesn’t, then an exception will be raised.

It was great to notice Ovid maintains a TODO list. It is not very clear what each item means, but I tried to ask him and understand. And as far as I could find, the first item of the TODO list seemed easy to implement. In fact,  too easy. This Pull Request, as far as I can tell, could do the trick. But I lack knowledge on creating a test case.

So, in order to close this month’s assignment, I am asking for comments, suggestions and any kind of constructive help on testing and fixing this pull request.

MonoGame, XNA and Documentation Hell

2000px-MonoGame_Logo.svgI confess I have some admiration towards the Mono Project. It is the base of different tools, and it allows those tools to run virtually on any device. A good example is the Unity 3D Game Engine.

In my teaching duties this year I need to each MonoGame. Not sure if this is a good choice or not, I just needed to keep with the old syllabus as I did not have any time to prepare the course as I should.

In case you are not aware, MonoGame is Microsoft XNA made public. Although the libraries, themselves, are easy to install under Windows, the most recent version is not available for Mac or Linux. The documentation that is available is mostly from the old XNA, in Microsoft MSDN. There are a few mini tutorials and blog posts that help on some specific details, but there isn’t a official, well prepared, source of documentation, and that is a shame.

Another problem from basing things on Microsoft previous work, is that MonoGame depends on Windows libraries, some of which are not free, and can’t be made available by the MonoGame project, meaning the developer needs to go through a list of old software (yeah, from 2011 is old software) to be able to have everything working.

One of the problems with MonoGame is that it depends on a binary format, named XNB, for importing assets. I am not sure if this format is open or not, but given it is Microsoft, I do not think so. To create these files, from other files, like image or sound files, you need a tool to convert. It seems (although I did not test yet) there is such a tool for Linux and Mac (the MonoGame Pipeline) but not for windows (are you sensing the strangeness here? the latest version of the library is only available for Windows, but the needed tools are not available for Windows…).

I wasted 5 hours trying to figure out how to create a XNB file from a WAV/MP3 file. I searched for tutorials, I downloaded software, I tried different approaches. None works with Windows 8.1 and Visual Studio 2013. I still did not try to contact the MonoGame team or foruns. But given this is something crucial for game development, I can’t understand how there isn’t an official reference from the project, on how to create these files).

The most promising tool I found was XNBBuilder (also known as XNBFormatter), a standalone tool for this conversion. But, from standalone it has few. It depends on XNA libraries (that I have installed) and, even with those libraries available, it still complains on them missing. In fact, a book I bought from Apress about C# game programming in MonoGame also suggests this tool (that means I am not the only trying to figure out how to create those XNB files). At the moment my try was to contact this tool author and asking for some support.

I confess I was expecting some more organization from MonoGame. I am really considering the suggestion to change the syllabus for another library. Even libgdx is more organized.

 

The Big Bang Theory – Season 7

Jim Parsons and Kaley Cuoco-Sweeting

Jim Parsons and Kaley Cuoco-Sweeting

Just finished the seventh season of The Big Bang Theory. Yes, indeed, more of the same, but still fun. The kind of jokes is mostly the same, but the story evolves. Even Sheldon kisses a girl , and Raj gets sex with a cute girl. The other two continue with their own blondes.

Some time ago I read somewhere, somebody complaining with this series, arguing it does not have any more fun, and that jokes are now offending. I do not agree. The jokes are the same since the beginning. But some people will laugh on others believes, religion or race, but will be angry when the joke changes to their own believes, religion or race. But no, The Big Bang Theory has, from time to time, a little on that kind of jokes (from the beginning on Blondes, a lot on Indians, a little on Black People, more recently on Christians) but the most interesting ones continue to be the geek ones. And just for the record, on this discussions on jokes, I am a Christian and can laugh with Christian jokes.

But yea, Kaley Cuoco (now -Sweeting) is also a good reason to continue watching this series.

PR-Challenge: January

Cross posted from my blogs.perl.org blog.

As pointed out in my previous post (here), in the January assignment on the Pull Request Challenge, I got the Data::ObjectDriver module.

For this module I created two very simple pull requests. One regarding its management with Module::Install, that is quite dependent on the author’s taste. That one wasn’t merged yet and who knows if it will. The second one, also very simple, just fixed a test that relied on a DBD::SQLite error message that changed with recent versions. This PR was merged, and a development version of the module just hit CPAN.

Meanwhile, I think the most interesting achievement on this month challenge was that with this we got SIXAPART guys, that use this module heavily, to adopt it. Therefore, the current maintainer that did not have much time for it can now rest, and the module will get updated in the future. Also, the SIXAPART guys just resurrected their CPAN account.

This all to say that this challenge can be useful in quite different ways.

SimCity Build It (game review)

After the Diablo III post this might be just the second time I review a game, Probably this might get a constant in the future not just because I like to play games, but also because in the later years I have been teaching some computer science courses about digital games.

So, getting to SimCity Build It, and trying not to repeat much of the last post about tamagotchies. This is just another FarmVille like game, where you produce goods and use those goods to earn money, so you can produce yet more goods and get more money.

Where Farmville and Hay Day have the animals, SimCity has the buildings.  If in Farmville you planted plants, here you build factories. But unlike farm Ville animals and plants animations would be kind of enough to motivate some players, SimCity is quite limited and repetitive,

I got to level 10 without much effort, and without paying anything, and I think I would be able to climb some more levels without problems, but I got tired of wayting, tired of playing when the game wants and not when I need some distraction.

Also, or my tablet is slow, or the loading time for a city is too much. I can’t get to any neighbour city in time to buy some specific good. When the game ends loading the city market no longer lists the good I am interested in,

2 in 5

image

PR-Challenge: January 1st PR

Cross Posted from my Perl Blogs blog.

So, yeah, to make me more active in the Perl community I decided to join the Pull Request Challenge. I have a quite big number of modules to maintain, but sometimes it is good to look to some other people code to learn something.

My attribution for January was Data::ObjectDriver. I am not sure, yet, what this module is about, but I learned some stuff already, dealing with Module::Install. That was enough for a simple Pull Request [see here]. Hopefully it will be useful for other people as well. Also, hope it gets accepted.

Although this is enough for the Challenge, I expect, in the next days, to prepare at least one more Pull Request. So, stay tuned.

EDIT: The second pull request [here] did not take that much time. Fixed a test that was failing given new error message on DBD::SQLite.

From Tamagotchi to SimCity Build It

I am not sure if you remember the Tamagotchi at all. It was a small device, kind of “Chinese electronics” (sorry, I know most electronics are made in China anyway, so not sure why the ones that does not have a non-Chinese mark are mostly so creepy), where the child needed to take care of a pet.

Probably there were other games with similar behavior, but this is the first game that I remember that needed constant attention, as it worked in real time. From time to time, the device will ring and flash, asking the player to do something, like feeding the pet, or playing with it.

From Tamagotchi we got to different other games with real time behavior. Probably the most common is the FarmVille, the game from Zynga. You all know the game, so probably I do not need to talk about it. But the player is a farmer, and needs to take care of animals. Events occur from time to time, if the player is playing, or not. So, it cannot be compared with other games like the old Sim City. There, things happen from time to time, as well. But the player can change the speed of the time, or just exit or pause the game, getting to the last position next time it plays.

Well, the kind of FarmVille games continues. There is another one, very similar, for Android, Hay Day. Probably there are much more. But I just happen to have installed that Hay Day some time ago, as I really liked the chicken on its icon.

10625116_975899972436334_1361720262538398927_n

Well, recently I just downloaded SimCity Build It for Android, from Electronic Arts. You know, I am, or I was, a SimCity fan. So, why not to get a SimCity version and play it? Who knows, even buy it?

But I got frustrated. Why? Because SimCity Build It is Hay Day (or FarmVille) in disguise. The mechanics are exactly the ones from Hay Day. Even the market! But if Hay Day is prepared with some caution (for example, to make a strawberry cake, you need flour, sugar and strawberries), in SimCity Build It, to build a house, you might need some iron, plastic or some wood. But you might also need some seeds, or a couple of hammers or even a measure tape. Yes, you might need seems to build a building. Yeah, that makes sense (not).

And, again, this is a “real time” game. You can’t pause it, you can’t exit it, you can’t speed forward for some time. You do not control or play the game. The game plays you.

This also leads to the discussion on the old “Pay to play”, or the new “Pay to win”. I confess I prefer the first. You might even release a free shareware version (lets say, 5 free levels). Just make that clear in the download page. Then ask for some amount of money to buy the full game. But this might be a good discussion for any other future post.

The Hitchhiker’s Guide to the Galaxy (2005)

Babelfish

Babelfish

Fun! I read the trilogy in five volumes (yeah, I read that joke somewhere) a lot of time ago, even before the movie. So, before 2005. But this long I am looking forward to watch it, and finally I did. It was very fun to remember the book story, to recognize the character names, to remember the story of our planet as a computer (yep, it is).

Well, before some other comments, let me just say that Zooey Deschanel is extremely cute in this movie.

Getting back to the movie, also nice to remember the origin of “babelfish”. It is a shame that the current babelfish (.com) lost all connection to the story of its name. Search for old babelfish, from Altavista, to remember the interface, and the babelfish reference.

No, I will not talk much about the 42, or the Ultimate Question about the Universe and Everything. Just that if you want a proper answer, never forget to prepare your question with caution.

And finally, what can I say? Just like the Hitchhiker’s Guide to the Galaxy, DON’T PANIC!

Don't Panic!

Don’t Panic!

Cube Zero (2004)

Cube Zero

Cube Zero

Yeah, I liked the first two (Cube and Hypercube) and noticed recently that a Cube Zero was available since 2004. So, I decided to watch it. Well, given it mentions zero, this should, probably, be considered the first on the three movies (you know, that stuff like Star Wars, making time go back…).

I like this movie not because of the concept, or jokes, but because I like to wonder what traps will be in the next room. In fact I think this concept would be great in a computer game. Anybody around willing to write a script for it? Maybe I can find some friends to develop it.