Category: operating system

Linux, 2017!

First of all, please do not read this post as a complain. Just as an analysis. I am a Linux user for decades. I remember using Linux in my first year of University, somewhere about 1996. I never stopped using Linux, in the server, but during some years, somewhere between 2002 and 2017 I was a Mac user for the desktop (one PPC Mac Book, two Intel Mac Book Pro). Back to the beginning of 2017 I needed an update, and decided to go back to Linux. Mostly because of the price of a decent Mac Book Pro when compared with a generic laptop. I decided on a Dell, and without a lot of thinking, decided on a Dell with a 4K display. Well, I had a hard time trying to install a distribution. Tried Mint, Debian and Ubuntu. Curiously, all gave trouble with UEFI boot, but the one that ended up installing a working Linux was Mint Given it is Debian based, I can keep up with the Debian updates, and install most packages available only for Ubuntu.

While I see some applications getting better, from 2002 to 2017, it seems Linux community continues rewriting the wheel. I can’t see any big difference from what I am experiencing today in the desktop with what I was experiencing earlier with Gnome 1. Yes, the code was changed. It might be more stable, faster, support a couple of new things. But it seems we continue rewriting and rewriting the same old applications.

Then there is the issue with a 4K display. Even if GTK3 has support for High DPI screens, a lot of  applications are not written for this toolkit. And I am not sure, at all, that this is something that need to be managed by the graphical toolkit. I still think it is a Xorg issue, where we should be able to define DPIs for each screen, and have the basic low-level tools scale everything. As this is how I see things, I decided today to look to the blog of Xorg. And it doesn’t have news since 2013. As I could read, now most work is done as independent libraries. Nevertheless, it is strange no changes were needed to be done in 4 years.

Also curious that a bunch of applications using node.js are being working great. Examples are GitKraken, Code, Atom, Franz… and even Sublime is working great on 4K (even if it has some other issues). Unfortunately Unity3d is not working properly in 4K, but that looks more like an issue with their own GUI system, than anything else (but then, if Xorg took care of things, maybe it would work great, just like it works acceptably under Windows). But other things, like old Gtk, Xlib, QT or even Java applications still look like needing a microscope to be read.

So, here I am, with a shiny new laptop, deciding to keep Linux, or getting back to.. huh.. windows! Yeah, I do dual boot, but I like Linux for most things. But some aren’t possible As a teacher, I know I will have problems when trying to use a beamer. When connecting an external display, everything will look monstrous. Or I can change the resolution on the built-in screen, go searching the HiDPI switch, turn it of, restart the session for it to be correctly applied, and then use the laptop. Shame.

And yes, I know a lot of this is my fault. If I did not change to Mac, and if like me other hundred of developers didn’t do the same, probably we would have a lot more Linux users, writing and patching these applications. Or we would just end up with a lot of more distributions, a lot more window manager, but with the same main issues.

At last, but not less important, I would like to thank you to everyone that is still working on Linux making it better. I know this is not a paid job. I know you (and I) do what we want, and what makes us happy. That is why this is not a complain text. Just looking to what I see, without pointing any fingers.

 

 

MonoGame: From Windows to Linux

The traditional way to have a C# MonoGame Project compile both under Linux and Windows is to use a tool named Protobuild. With the last version (3.6), the MonoGame OpenGL template for a cross platform game includes references to the libraries in the three main formats: DLL for windows, DyLib for mac, and so for Linux. This seemed like a good chance for making things work.

And it mostly did. Change to the path where the .csproj file resides, and run xbuild. The bin folder should be created, and inside there, a path accordingly with your project configuration. For example, bin/DesktopGL/AnyCPU/Debug. Then, go there, and just run your game with
mono Project.exe.

(future work: check how to make things work outside the output dir)

Euclidea – Geometric Construction Game

Euclidea

Euclidea

Euclidea is a very interesting game. Something new, a different game, educational, fun, difficult, challenging. A great game. If you like geometry, if you loved how to build geometric constructions on paper, but always made them blur, you will love this game.

Getting back to Linux: Part #1

Debian_Logo_02After the last Apple keynote, the news on Mac Book Pro, and the exorbitant price, I took part of this Sunday to look back to Linux as a Desktop. Although I work usually on a 2011 Mac, that runs perfectly (just some bumps), I have a Lenovo laptop. So, I decided to install the Linux distribution I have been using lately for my servers: debian.

First I downloaded the netinstall image. It complained of missing drivers for wi-fi and ethernet. Then, I downloaded the non-free netinstall image. Same behavior.

Well, decided to keep it, and use a USB stick to install the missing packages. After going from/to my mac to download missing packages and dependencies, I got something. The card is detected, the correct (at least it seems) module is loaded, ifconfig shows the device, but ifup fails to bring it up.

After googling and fighting with wpa (first I was thinking this was the problem), I found out that Linux was just deciding that it couldn’t load the interface, and mentioned something about rfkill, that I am not sure what it is.

Googled a little more and found articles saying that my Lenovo has some other wireless card than the one listed by lspci. Strange.

In any case, the day is almost over, and I need to get back to my job. My conclusion so far is a quote from an old teacher, now a friend: Linux is still a Cowboys operating system.

Not sure about all Linux distributions, but debian for sure.

 

Slitherlink

Slitherlink

Slitherlink

Usually I do not play much on my Android phone. But when waiting for someone or something, to have a good puzzle is worth it.

Slitherlink, as you can look up in the Internet, is not an idea of this app author. It is a known puzzle, and if you look up in Google Play, you will notice a few implementations.

I can’t say that this one is the best, as I did not test any other. But it installed correctly, runs smoothly, and seems to have some good diversity of modes and difficulty levels. Therefore, I am quite happy with it, happy enough to consider buying the ad-free version, with extra levels. Truth be said, the free version includes a good mount of levels, and ads are not intrusive. So, kudos for that.

About the game, it is up to you to read about it and test it. It can be seen as some sort of minesweeper, with some reasoning mechanisms also used in sudoku.

Any.Do – The best task tracking system ATM

Any.DO-Logo-+-NameFor a long time I have been trying different ways to track my stack of tasks. I tried different approaches, from using paper (it is fun!), Calendar Mac App, Wunderlist, and recently Any.Do.

Paper is probably the best, as you can write freely, draw, scratch, rip, and other physical activities that are quite fun. But, unless you get a small notebook, it gets hard to be with you all the time. You could also scratch on a smart phone device, like Samsung S Note app. But when I am working in my laptop, I do not like to have to take the phone to add or remove entries. So, next natural step is to use a tool that syncs tasks between devices.

Wunderlist is cool. Cool enough for me to use it for some time. It has the fun fact that it keeps finished tasks scratched, just like you might do in paper. Nevertheless, the app is (or was, when I tried it) quite limited. You could have different todo lists, but it was hard to see them all at once. You could add some manual tags to tasks (I did that for some time), but it got boring. And it wasn’t easy to sort tasks. You needed to, somehow, change its date.

I tried for some time Evernote for that. It allows to add tick boxes to your notes. But again, not easy to see all tasks in one screen, unless you add them all in the same sheet. And if you do, it gets complicated to manage the order, and the categories, with lots of cut, copy and paste.

So, recently I am using Any.DO. It is also available for Mac, Web, and Android, so easy to sync around. And it has three main ways to see your tickets: per category, per time, or per importance. And in each of these three views, you can sort easily your tasks just by moving them around. I am very satisfied (for now, at least) with it. But I still wonder how much more fun and efficient it might get with the paid version. But a monthly (or yearly) subscription is not exactly what I want right now. Nevertheless, if I could buy the app (and not a service) I might be buying it soon.

Windows 8.1, lock screen and flickering

Windows 8.1 Default Lock Screen

Windows 8.1 Default Lock Screen

Mostly sure you recognize this screen from Windows 8.1. This is the default picture, at least for some Windows 8.1 installations, used in the lock screen. A lot of users do not change it, as it is used in a few circumstances. Nevertheless, I changed it. And it made me shiver on Windows 8.1 implementation details. Although it is really fast booting, when compared with other Windows versions, I still see things I would prefer not to. Namely, before the picture I chose for the lock screen be shown, the screen flickers and I see.. yes, the default picture shown above. This means that the operating system is loading this image from disk, even when it is not needed. Couldn’t the system load the user defined picture and, only if it does not find it, load the default picture? Wouldn’t that be faster?

Also, Windows 8.1 is out, a lot of fixes, and the “dots animation” on the busy screens are not yet fixed? Any of my students would make that animation correctly. Yeah, look to it with caution, and you’ll see what I mean.

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.

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.

iOS 7… what’s relevant?

New maps icon

New maps icon

 

For now, iOS7 main difference from previous versions, is that its maps icon does not ask the driver to jump out a bridge. Finally!

Tags: ,

categories iOS