2007-07-18

Windows permissions/account management

I hate how Windows doesn't let you delete or modify a file when a process is holding it open! Linux lets you do it and it just keeps a copy in memory to satisfy the offending process. Also, Windows has no root account! This is extremely annoying and makes me feel like the computer is giving me orders, instead of the other way around. I mean come on, Windows has more permissions than I do?! Even when I elevate privileges in Vista, there are so many things I can't do because the @%#$& OS says I can't!

Gaah! OK...trying to calm down...

2007-07-11

Dual monitors

I got a second monitor at work, and now I get to experience the awesomeness of two monitors! They really do improve productivity for programming.

I use the first one (my laptop's built in screen, 1920x1200, 17") for primary development (that is, actually writing code) and the second one (1280x1024, 17") for debugging/testing and reading documentation. Maybe I can get a third monitor* for reading Slashdot! :) Maybe I'll post a picture of my office.

*A third one probably wouldn't actually work because my laptop only has one graphics card. So unless I can get my hands on one of those external monitor-joining boxes, I'm limited to two.

AP tests

I got 5s on all (Computer Science, Calculus AB, World History) of my AP tests! Yes, including World History, for which I didn't study and pretty much skipped two of the essays!

2007-07-10

Gravitating away from UI programming

Today I did my first non-UI assignment at SchoolSoft (did I mention that it's now called DreamBox?). It was a generator, a class that generates numbers (or other kinds of data) for the client-side application. For example, when asking the kid to compare different numbers, the generator provides those numbers. It seems easy but there's actually some complexity: if the kid is doing badly, the generator might have to "adapt" and make things easier. Sometimes the teachers (yeah, we have professional teachers on staff) want the questions to come in a certain order or something. So the person who makes the generator has to find algorithms for how to make the correct sequence of numbers. It's pretty fun, especially compared to the frustration of UI programming.

2007-07-09

I get paid a lot!

This week I get paid, and it's a lot! About $550 on most weeks (although last week I was on vacation for three days) (it's not $15/hr * 8hr * 5day because I don't work 8 hours a day, more like 7.5. Eight hours is the maximum I'm allowed to work, actually). Not bad for a job doing something I would have done at home anyway :)

2007-07-07

Vacation: IIT conference in Santa Clara, CA

As I mentioned earlier, for my vacation I went to the 2007 IIT conference. There were some pretty impressive people speaking there, like the CEO of GE and Hillary Clinton. Some people who were more of interest to me, though, were people like the president of Stanford (who was one of the major researchers who developed the RISC architecture), the originator of FTP, and Manindra Agarwal (a professor at IIT who was the main researcher who developed the AKS primality test, which is an algorithm to check if a number is prime in polynomial-logarithmic time), whom I personally talked to.

2007-07-05

Per-process permissions

I've had the idea to implement per-process permissions for a few years now, but someone on Slashdot expressed the exact same idea as mine in an easy-to-understand way (and got moderated +5 for it...):

Hey, it's time for me to bring out my rant against current Unix/Windows permissions systems! Whee.

OK, here's the short version: it's good that files on modern OS have access restricted to certain users, but that's not nearly enough. Instead access to files should be further restricted by process so that eg. Firefox only has permission to read/write to its cache, bookmarks, and download folders and that's it. If you need to upload, it should be forced to use a common API to beg the user for permission to even view uploadable files. Why? Well, exactly to stop this sort of exploit where a trojan promises to do something useful, but actually searches (using fancy new Spotlight and Windows Search, no less!) for files called "my CC#s" to send back to the mothership.

In other words, I think we should Sandbox Everything.

Apparently, SE Linux is trying to do something like this, but OS vendors need to find a way to make this whole process seamless and easy, so that I can right click on an application, go to permissions, and say, "This program I will allow to read my home directory, but only write to its own directories; that one I will let write anywhere, but read only itself" and so on.

It will be really hard to implement this in a user friendly way, but it is clearly the necessary next step in computer security. Apple, Microsoft, and (consumer oriented) Linux devs should start working on this now.

2007-07-03

IIT 2007 Conference

From tomorrow to Friday (07-04 – 07-06) I'll be at the IIT 2007 Global Alumni Conference in California. In it, people like Hillary Clinton are going to give speeches, and there'll be discussion on tech topics. Here's the program overview.

2007-07-02

School schedule

OK, so following in the tradition of Milda and Mary P, here's my schedule (which I just received today because I forgot to get one at the end of the year).

ClassTeacherRoom
Math::Calculus::HLAndrews2703
English::JuniorCalvert2608
Health/ToKPerez/Becker1801/2704
ITGSCooney1808
Science::PhysicsO'Byrne1708
History::AmericaOliveira2705
French::4Collomb1628