Pages

Tuesday, January 31, 2012

If Internet was like TV

I love Internet. I love it because it has evolved, so far, without restrictions, without chains or limits. It has its good things and, of course, its bad things, but we must learn a lot from it. If we manage to adapt old services and technologies to modern times we'll find success, if we don't, Internet will be there to show you how you SHOULD have done it...


Now imagine Internet was like TV. You wake up in the morning and connect to Internet to read the news in your favorite RSS reader but, uh.. oh, ERROR, RSS reader is only available from 1 to 2PM, sorry. Umm, then I'll connect to Twitter to see what's going on in the world... MEEK! Twitter is scheduled for 5 to 7PM... sounds stupid, doesn't it? 


Yeah, as stupid as not being able to watch a TV show or film that has already been released at any time you want. Specially when you are paying for a premium TV service.


OK, I know this already exists in some countries, for limited services and channels, and frequently with hard restrictions. Some times they even offer the same show at different times to help those who missed it, and f***k those who already saw it.


This is the price we have to pay for TV companies not wanting to move to Internet and sticking with old static TV programming. 


Few days ago I wanted to watch some TV show a friend recommended to me. I knew that it had already been shown on TV the day before but I didn't have my Delorean at hand so I looked for it on Youzee (the Spanish Netflix) but it wasn't available yet... sheesh! There goes my 7 bucks. Well, wonder what happened next... Just a tip; I finally managed to watch it...


The thing is that I'm paying for a premium TV services, with lots of channels, and all of this through Internet, but static. So half of the time I'm paying for something I'm not using.


How can someone still wonder why piracy exists?

Saturday, January 28, 2012

Quares for iOS & Android

Quares Screenshot 1

Quares is our first approach to the mobile gaming market, but definitely not the last.

Available for iOS (iPhone, iPod Touch and iPad) and Android platforms, it's an interesting puzzle game where you have to find rectangles of all sizes and shapes where the boxes in the four corners have the same color. All of this against time, which adds a thrilling factor to the game.

Quares Screenshot 2

Quite difficult at the beginning but addicting when you get used to it.

DISCLAIMER: Playing too much may end in seeing squares of all colors when they aren't, even when sleeping...

AppStore: http://itunes.apple.com/us/app/quares/id455728856

Android Market: https://market.android.com/details?id=com.doublequal.quares

Official Web Site: http://www.doubleequal.com/quares/

Friday, January 27, 2012

Is iOS the Future of the Mac?

Today I read a very interesting article about the possible future of iOS on Mac: http://mac.appstorm.net/general/opinion/is-ios-the-future-of-the-mac/#comment-439262

I really think this is possible and it will eventually happen, even though people from Apple rejected this idea.

How then? Easy, We will literally never have iOS on Mac. iOS will belong to mobile devices and OS X will belong to desktops and laptops, but take a look at Lion, it already implemented many things from iOS, and it looks like just the beginning. What I think will happen is that following versions of OS X will keep introducing more and more things from iOS, trying to make the transition smooth and unnoticeable for users.

Why is this? Because users don't like Apple to tell them how to use their computers, even though they do what they say most times. Users love the idea of freedom, they want to be able to do everything, even when this results in problems.

So, Apple needs to make this change in a way users don't realize they are using iOS instead of OS X. Get the best and necessary from OS X and do it like you'd do in iOS.

Thursday, January 26, 2012

Shades from the past

We, very frequently, see rests from the past all around us, from big impressive statues to the fallen idols, to old buildings from long ago dead cultures.

But there are things from the past we cannot see or touch, that's the heritage from other times, and we have to be very careful with them, because even though they can help us learn from errors or successes, they can also be a ballast for evolution.

There are many of them and each one would take an entire article ten times bigger than this one to properly discuss it.

The most known heritage are old business models, specially those related to non-tangible products, which have been getting quite popular lately.  There are many more but there is one that I'd like to discuss here, and it is Academic Titles.

I know many people will disagree with this, specially those with a large amount of them or those whose jobs are based on them, but I think they are something from the past we should get rid of.

I don't exactly know where they come from, if it's from the old medieval "Lord" and "Sir" titles or from the fact that everyone wants to brag about what they've achieved, but one thing is for sure, they are definitely not needed for jobs. You can have a grade, two post-grades and three masters and still fit worse for an specific job that someone without any titles but with many knowledge and experience. The only difference is that you have the titles that prove you should know something, but they don't prove many other things such as how you got all that knowledge, if you had external help or difficulties in the way, if it was easy or hard for you, and even more important, how are you able to acquire more knowledge.

Also, aside from skills and knowledge there are many other factors that are as important as these for certain positions, and these cannot be measured with titles.

But times are changing, and companies are evolving in the way they interview candidates and the way they measure their attributes. There are still a lot of companies asking for a whole load of titles but that will eventually change, and this heritage will disappear.

And I wonder, what will happen to prestigious universities who base this prestige in their titles?, will they evolve or try to fight against it?

Take a look at this interesting article: http://www.hackeducation.com/2012/01/23/stanford-ai-professor-thrun-leaves-university-to-start-udacity-an-online-learning-startup/

Wednesday, December 29, 2010

Remotely killing alive Terminal Server sessions

It has happened to me so many times that, when people close Terminal Server sessions using the X instead of logging off, these sessions stay alive for more time that we'd like thus preventing us from logging into the server as it has already reached the maximum number of concurrent sessions:



“The terminal server has exceeded the maximum number of allowed connections. The system can not log you on. The system has reached its licensed logon limit. Please try again later.”




Some modifications on the server configuration may fix this problem, but most times we are not "allowed" to mess up with the server, so we have to use alternative ways.

There are two "tricks" that will help us to avoid these problems:

1.- The first is by trying to connect using the command line and the console mode. This mode works as an additional connection to the server but if we miss to log off that session too, we'll have the same problem as described before. The correct command would be: mstsc /v:00.00.00.00 /f /console

2.- If we end up with all sessions locked included the console one, we will have to finish one of those sessions before connecting again. For this, however, we need to be using a Windows Server version or install the Windows Support Tools for Windows Server OS since we need the "query" command, not available in all versions of Windows.

Once we have access to this command the procedure is:

net use /user:adminusername 0.00.00.00

query session /server:00.00.00.00

resert session X /server:00.00.00.00 (Where X is the identifier of the session we want to terminate)


If all goes right, we'll have some sessions killed and we will be able to log again into the server. But remember to use Log Off this time!


Good Luck!

Tuesday, October 26, 2010

Are lotteries just random?



This topic is not new and don't expect to read something you haven't seen before, but I found quite interesting an article I read today. This article was telling how, in yesterday's lottery, the first prize had to be shared between 47 people, which is really odd and not good news for winners who won around 60.000€ compared to the ~2€ million they could have won.

The answer to this strange happening comes when you look at the winning numbers: 7-8-10-20-30-40. Which show an obvious fact, winning numbers are random but those who take part in the lottery are not. And this brings us to the main topic; "are lotteries just random?"

Of course not! It's said that lotteries are all about mathematics, but when you thrown in humans into the equation it gets much more complicated. For the previously discussed case, the winning chances were 1 to 14 million, but that didn't count on humans making conditioned choices. For example, it's well know that most people prefer well spread numbers such as "x - 1x - 2x - 3x - 4x - nx" but, at the same time, an odd number like 1-2-3-4-5-6 is chosen by many people, so it's hard to predict human behavior.

Sure you have the same chances with any number, but have this in mind; the less common your chosen numbers are, the easier it'll be for them to be unique and thus, if you happen to win, you won't have to share with others.

Just remember; numbers may be random, humans are not.

Thanks for reading ;-)

Monday, October 4, 2010

How to set different styles for each tab in a AjaxControlToolKit TabContainer

It's been a long time since i last wrote in this blog, but today I have wanted to write about a simple styling tip. It's well known to everyone that, in order to style the TabContainer's tabs, you can use the control properties, but these properties are sort of limited, and if you would like something more complex you will find out that the control won't support it.

In this case we will see how we can specify different styles for every tab in the TabContainer, in case you would like to set, for example, alternative colours for the tabs.

To do this you need to get inside the post-rendered TabContainer nodes using javascript, find the right element and overwrite its current style.

Let's see a simple script that will enable us to do this:


Sys.Application.add_load(PageLoad);
function PageLoad()
{
var tabCont = $find('');
var tabs = tabCont.get_tabs();
for(i=0;i<tabs.length;i++){
if((i+1)%2 == 0){
Sys.UI.DomElement.addCssClass(tabs[i]._headerOuterWrapper,"ajax__tab_outer_alt");
}
}
}


What we are doing here is pretty simple. The "Sys.Application.add_load(PageLoad);" statement ensures that this script is launched when the whole page has already been loaded.

In the PageLoad function we first retrieve the TabContainer control. $find is an AjaxControlToolkit's function to get DOM access to ajax controls, and "" will help us get the control ID that is displayed in the final HTML.

The rest of the code will just get all the Tabs within the TabContainer and loop through them, checking whether its index is a pair number or not, and in case it is, overwriting the new css style to that element, using "Sys.UI.DomElement.addCssClass" function.

"ajax__tab_outer_alt" is the name of the css class we are going to replace the current one with, so you must be sure that this class exists on the current CSS file.

NOTE: There is also a removeCssClass function, but trying to remove the style and add another one later will result in odd behavior, so it's recommended to just overwrite the current style instead.

You can debug this script and get deeper into the TabContainer or any other AjaxControlToolkit element, to change properties after rendering has already happened.


Thanks for reading.