iOS 7

Just watched the iOS 7 announcement video. It pretty much served as proof that now that Steve Jobs is gone and his plans have all been used up, Apple is no longer the industry innovator. Besides a couple of small visual improvements like the parallax effect on the home screen (major waste of CPU) and the translucency effect on the menus, Apple pretty much made a direct copy of Android’s flat design that they introduced with ICS over two years ago.

Control center has been around since Cyanogen introduced it with CM7 in 2010. Most phones have it now. Visual multitasking was introduced in ICS in 2011. Airdrop has been around since the beginning in the form of Bluetooth file transfer. But I think the worst ripoff was with Safari. Every single feature they showed from the new Safari was taken directly from Chrome for Android. Bookmark icons, visual/layered tabs, and the disappearing URL bar.

This whole thing is turning out to be exactly like the early days of Windows vs Mac.

Advertisements

Why Windows 8 is an Epic Fail

Everybody talked about Windows 8 for months. It was going to be Microsoft’s make it or break it. Microsoft’s view was that with the emerging tablet market, they had to evolve with it or risk being left behind. What they didn’t realize was that they do one thing and that’s what they do best: the desktop. So why did they ditch it for an already saturated tablet and phone market?

Let’s start off with a little perspective here. Microsoft has three main divisions.

  1. There’s the obvious Windows/Windows Live, which is Microsoft’s flagship product.
  2. Online Services, which is pretty much just Bing. (Google’s  mentally disabled cousin)
  3. Entertainment. This is mostly Xbox.
  4. Business, which sells their server products such as Exchange as well as Microsoft office.

Now, let’s put them in order of their earnings as of Q1 2013:

  1. Business – $5.50 billion
  2. Windows – $3.24 billion
  3. Entertainment – $1.95 billion
  4. Online Services – $697 million (I lol’d)

Now, those statistics took me a good half hour to gather, so read them well! As you can see, Microsoft clearly excels in Business. That’s where most of their revenue comes from.

 

[First Draft – To be continued]

The front page of the internet

This month, Reddit is expected to serve over a billion pageviews.

Reddit is a massively popular link-sharing website. Anybody can submit a link to be judged by the millions of Reddit users, usually referred to as Redditors. Each Redditor has a username page. For example, here’s mine. As of this writing, I have 3,004 link karma and 2,957 comment karma. This means that my link submissions have a total of 3,004 upvotes, and the comments I’ve submitted have a total of 2,957 upvotes. Karma is a general indicator of the respect you’ve earned on Reddit. It doesn’t mean much, and you can’t redeem it. But people (including me) voraciously go after it.

There are over 67,000 “subreddits” which are different categories that Redditors can subscribe or unsubscribe to, depending on their interests. Currently the default subreddits are:

  • funny
  • pics
  • announcements
  • blog
  • AskReddit
  • worldnews
  • gaming
  • todayilearned (TIL)
  • politics
  • science
  • WTF
  • IAmA
  • videos
  • technology
  • Music
  • atheism
  • AdviceAnimals
  • aww
  • movies
  • bestof
  • explain like I’m 5 (ELI5)

Most of these are self explanitory. Some that aren’t are AskReddit, IAmA, and bestof.

AskReddit is text-only board which means that users can only submit text posts and are not allowed to post links. The idea is for people to post thought-provoking, discussion-based questions. Most of the time, there’s some great discussion here, and people post amazing stories. Recently, the moderators made it a rule that people can’t post their story in the title of their post. This seriously improved the board, because before, people were just posting stories in their title without even asking a question.

IAmA is one of the most interesting subreddits. It is a place for celebrities and other interesting people to answer questions posted by Reddit users. Some people who have posted include Bill Nye, Louis C.K., and even Barack Obama.

Atheism is generally regarded as the asshole of Reddit. Most of us on Reddit are generally atheist, but this is a group of people that only brag about their lack of religion and hate on  other religions. Reddit’s general opinion about r/atheism is expressed in this video. They pretty much just post Facebook arguments about them dissing other people’s religion, or girly pictures of people with quotes macroed on to them.

Reddit’s politics section could might as well be called r/farLeft and nobody would have a problem with it. Although I identify myself as a liberal, I don’t like getting my political news from this board. Because of the way the upvote/downvote system works, people only upvote what they want to see. If I was to post an article promoting loose gun-control, for example, I would be downvoted to oblivion. This would bring my overall karma down, so I just wouldn’t do it. But, if I submitted an article praising (or even lying about to sound good) something liberal, I would get hundreds of upvotes. For example, I picked some of these out of the current trending articles on r/politics: “Florida Voter Law Designed To Keep Students, Renters From Voting, GOP Politicians Admit”, or maybe “The newly appointed Senator from South Carolina proposed a bill to kick families off of food stamps if one member went on strike as part of a union. And he called for the impeachment of Obama over the debt ceiling.” Although I agree with the opinions, most of the stuff submitted here is exaggeration or straight-up libel.

Reddit’s community is one that I love and one that I hate. As much as I crap on it, I’ll always be back.

Linux

Linux and I have been together for many years, like two people in a relationship that grow distant, then fall in love once again. Well, I’m in love again.

I don’t remember exactly, but I started using it when I was about 12. I still remember the first weekend that I downloaded Ubuntu 8.04 set it up and started using it. It was so exciting to learn how wildly different it was from the Windows that I’d been using all my life.

I know it sounds crazy, but I love Linux because it doesn’t just work. Things break. Dependencies get mangled. Programs have to be compiled from source. And I love all of it, because when I use it, it’s something that I built, and worked to make it mine.

For example, if you want a program for Windows, you download the exe, and go through the installer with the nice little “Next”button and it does everything for you. On Linux, if you want a program that doesn’t have a binary, you have to compile it from source. That means you download all of the components of the program, and using Terminal commands like make and gunzip, you compile it yourself in to a working program.

I love Linux because it’s customizable. There are hundreds of distributions dedicated to customizing Linux for your specific needs. The most popular is Ubuntu, which is directed at the mass consumer market for its ease of use. There’s Fedora, which is what I use on most of my computers which is a “step-up” from Ubuntu. It’s a bit more complicated but much more rewarding. Then there all kinds of other “distros”. Some like Puppy Dog Linux which is made to be as small as possible. There’s Red Hat which is made for enterprise computers. BackTrack, which is made for security testing. I could go on, but my point is that the options with Linux are endless.

With all of the cool things about Linux that I haven’t even touched on, the coolest part? Everything is free. Yes, free. A popular saying in the Linux community is that free not only means “free, as in free beer”, but it also means that you have the freedom to do whatever you want with it. Anybody can view the source, inspect it, and improve it. It’s a big collaboration. The same also goes for most applications created for Linux. Their source is released to the public, and people are free to view, modify, and use it to their liking.

If you’re looking for more reasons to switch over to Linux, check out WhyLinuxIsBetter.net

Setting up the Android development environment in Fedora

After deciding to switch to Fedora Linux for programming, I went through a good amount of steps to get it fully working. I’ve tried to document it here for anybody having problems with Eclipse and Java on Fedora. So, here we go.

  1. Download Java for your version of Linux and processor. Make sure you download x64 if you have a 64-bit OS. Problems will arise if you don’t download the correct version. Fortunately for you, they release Java in a nice little .rpm package, similar to a .deb on Debian OSes and .exe on Windows. Remember to get the RPM, not the tarball. You don’t want to install from source. When it downloads  simply double click it, and it will install for you.
  2. After Java is installed download Eclipse. This link is to the mobile version, because this tutorial is for setting up Android development. As with Java, make sure to get the the x64 Linux version. When you download it, it will come as a tarball. Don’t worry, you don’t have to compile it from source. Just right click and extract it. Now copy the extracted folder to somewhere that it can stay. I used my home folder.
  3. This step is for if you want to add a shortcut to the GNOME3 applications list. You can do this though a few terminal commands, which I usually prefer, but I found a great program called A La Carte. Run # sudo yum install alacarte . When it’s done, just type alacarte in to the terminal. You will be presented with a window looking like this. Click the”Development” category on the left, then click the “New Item”button to add Eclipse to the category. Name it Eclipse, then click the Browse button. Navigate to wherever you moved the eclipse folder to in step 2. Open the folder and double click the Eclipse executable file in there (aptly named eclipse). If you’d like to have the icon instead of an ugly placeholder icon, click on the springboard image. Navigate to the same folder you were in and double click the Eclipse icon, icon.xpm.
  4. Congratulations, you’ve now installed the base component to get Eclipse running. After opening up Eclipse and selecting your workspace and so on, you’re going to have to install the ADT. Go to Help>Install New Software and click Add… It will bring up the dialog box that you see below. Give it whatever name you want and paste. When  you hit okay, you’ll be presented with two options: Development Tools and NDK. Check both.  Go through the steps. 
  5. The last step is to install the SDK. It is possible to manually install it and specify its location to Eclipse, but there’s pretty much no reason to do that. Click Window>Android SDK Manager and you’ll be presented with a list of all versions of Android. The Tools folder is a necessity for Android development. Also, download the SDK that matches the version of your phone (I have 4.1 Jellybean so I got Android 4.1.2)
  6. Here’s where installing on Fedora differs from some other Linux distributions: ADB is 32 bit only, so if you have a 64 bit OS, you need to download a few packages. Run this command in terminal:
    # yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686

    and you now have the libraries to correctly debug on your phone. Happy programming!

I Hate Computers

I’ve been trying to get my Android developing environment working for weeks now. Here’s the story so far.

It started with the Samsung drivers. You would think that Samsung would make their drivers readily available to the general public, but they instead make you install their terrible bloat-ware just to get the driver. The kind that constantly bothers you with advertisements and stuff about your phone. The kind that nobody wants. After much searching through XDA Forums and others, I eventually found the driver in the nether corners of the internet. One of those file lockers that you’ve probably never heard of and are run out of the middle of Siberia, where it’s just too damn cold for any legal force to even go out there and take it down.

After I procured the drivers, my face was smashed in to my desk out of frustration. ADB previously worked on the my user account. One day, it didn’t. The school blocked the command line, a necessary component of using ADB. After spending a class studying ways to re-enable the command line, I decided to go for the registry method. The default RegEdit.exe was blocked, so I downloaded a third party registry editor and went through the catacombs of the Windows registry to find the “Enable Command Line” option. The light at the end of the tunnel. I could finally program in peace. I rebooted. I waited. I opened the command line. It worked! ADB found my device too! Well, I tried it and I still couldn’t load my project on my phone to see if the programming I’ve been doing even works.

No big deal, I said, I’ll just use a virtual device. I use them all the time at home. Well, what I failed to realize it that the school computers are grossly underpowered for basically running two computers at once. Once the emulator finally loaded (after around 15 minutes), I was getting a max frame rate of about 2 FPS. No big deal, I said, I’m just using some basic text apps. Well, it couldn’t even launch those. Next option?

Switch to Linux. That’s where I am now. I’ve had it running for three classes now. I got Ubuntu, which comes pre-packed with the god-awful Unity Desktop. Unity was supposed to be their take on making the desktop simple. Or something. Anyways, I just did a simple sudo apt-get remove unity to get rid of it, because all previous versions of Ubuntu/Unity have been pre-packaged with both Unity and GNOME for people like me that have been using Ubuntu for years and realize how unintuitive Unity is and just want the old one back. Well, Ubuntu decided to completely remove GNOME from the new 12.10. Now I’m stuck here with no desktop at all. Luckily, Boo was sitting next to me and informed me of the key command to drop in to a terminal only interface. After a sudo apt-get install gnome-3 and a sudo reboot I was back to the GNOME desktop that I know and love.

Now on to Eclipse. The installation wasn’t too bad. I just had to make a shortcut in my Applications folder. Java was also easy. It came in a nice little .deb executable. But now it keeps showing up. Anyways, that’s Java. I installed it so it would go away, but now I get a notification at least once an hour that Java has a problem and it’s all my fault.

Once everything finally started working, I started programming. FINALLY! I said, I can do what I’m actually supposed to in this class! Well, after my first onCreate bundle, I used a setContentView to specify my layout. I set the path to my layout (R.layout.main), and it didn’t find it. What the actual frogs. After messing around for a while, changing my imports around, looking for solutions online, I said “I’ll just re install the Android SDK”. I opened up the SDK manager, and realized that I never even downloaded one. So it’s downloading now. And that concludes my very long rant.

My full endorsement of Obama

Where to start? I guess I could start by saying that voting for Mitt Romney is a statement that you believe anything that somebody tells you. Voting for Romney is taking the easy route now, and destroying our future.

He tells us that he’s going to fix our economy with his magical plan that he still hasn’t revealed.

Instead of investing in clean energy for our future, he wants to spend more money on domestic drilling.

Instead of investing in educated students, he wants to cut government funding. He says to “borrow money from your parents”.

The worst thing that Mitt Romney wants to do is remove Obamacare. Barack Obama has set a government-subsidized healthcare plan in place, with laws that protect American people. Laws like the one that states health insurance companies can’t deny somebody with a pre-existing condition. Mitt Romney strongly opposes this, and instead wants to give the power to the businesses.

Mitt’s general M.O. is to give power to the businesses and take it away from the American people. A vote for Obama is a vote for your personal well being. A vote for Romney is a vote for Big Oil and gay oppression.