banner logo
Updates Blog Support Contact Links
Programming JdiWeb JdiMOO JdiBoy JdiMail JdiMOOpp NetCheck Tutorials
Gaming AVR Othello

Archive for April, 2008

IEEE Southeast Con

Monday, April 14th, 2008

You might have guessed that I’m in IEEE. It’s in my field and there’s a student chapter here. But I’m not terribly involved. There’s a thing in this area of the US called the Southeast Con. Basically, it’s a regional competition for IEEE people. There’s a programming competition, an ethics competition, and a robotics competition.

Late last year, I was helping with the robot design using some computer modeling. What people where saying is that there where thigns on order and it was going to be fairly done when we got back from the break. Well, I didn’t here anything for a while, then about 2 weeks before it was time to go, there was a meeting to discuss it. Things seemed on track, and we just had to get there. About a week latter, I found out that the robot team was more or less cloister in the lab, working day and night, but hadn’t made much progress. I tried to help out, but I ended up not doing much. I hoped that they would be done.

I left early to head to there, which happened to be in Alabama. The other people where driving though the night after very little sleep. That didn’t sound like a good idea to me. When the other people arived, the robot was in about the same state it was in before. It didn’t run. The sensors didn’t have drivers. They didn’t even seem to have a stratagy, something that they could have had months ago.

In the end, the robot just qualified, but tore itself in the process. The axil ripped though the wheels and the drive chain pulled appart. They ended up giving up and sleeping rather than actually competing.

The rest of us, including me, competed in the programming competition. It was hard. Mostly it was algorithms that I’ve heard of before, but remembering how to do them, and how to make thing without standard C++ libraries is hard. And the comptuers where slow, abotu 24 SunBlades powered off of one Sun workstation over a slow network. Things crashed, you could easily out type a plain text editor. But that happened to everyone. We didn’t win, but we didn’t loose.

Well, it looks like this was mostly a rant. Sorry.

What Linux Needs

Saturday, April 12th, 2008

This is in reply to Will’s comment previously on Linux’s shortcoming. He wanted to know of it was possible for our LUG to research into why people don’t switch to Linux. I don’t know if we could do research per se, but these are my thoughts.

1) Linux requires too much know-how. Sure, you can get up and running on Ubuntu or Fedora in just a little while without much problem. But getting things setup just right, or making things work is too hard. Some of it is licensing things. MP3’s for instance, can’t be supported by default because it’s patented or something. Normal people don’t care about that. They want to listen to their extensive MP3 collection right off the bat. Sure, they can convert to ogg vorbis, but that is too much work. Things should “just work”

Along those lines, the command line is a powerful tool for the experts and power users, but they expect users to make use of it, too, so it becomes a crutch for the power users, and a barrier for the normal people.

And then there’s the unavoidable situation where you have to install the OS. How many people actually re-install windows, let alone change OS’s completely? Hardly any. It’s a pain to back stuff up completely, and go though the install process. Even the best of us limit how often we do it, and we take precautions to make it easier, like having parts on separate drives. The install process is nearly as easy as it gets now, but people don’t want to do it.

2) Not enough support. I’m not talking forums or IRC or something. There are plenty of resources like that. Ubuntu Forums are huge and very complete. There are blogs, email archives, user groups, and all kinds of things. But that requires people to look it up themselves, then translate the tech-speak to english. Red Hat works in this area, and the will probably pick up many new people if they pull from one of the recent versions of Fedora for their next version. People want the security blanket that someone can fix their computer. There are times I’m tempted to take my linux box to a repair place like Geek Squad and see what they’d say. But they might think I have a terrible infestation of viruses and format it all away. There’s a bit of a catch-22 with this. People won’t switch until there is support, and there won’t be support until people switch.

The other side to this is what help there is is often hard to understand. Command line snippits are what you usually find. This goes back to people using the command line as a crutch. And the IRC help can be finicky. Some rooms are very nice. Some are intimidating and scary. Ask a n00b question, and get pwn’d (if I may use the usual terms found there). The elitism can be very bad. In person help is usually very helpful and nice. But then you have to find out who those people are. And finding a LUG is hard work.

A different take on this is the support from 3rd party developers. Driver support is a nightmare. Finding the right combination of drivers, software, and hardware to get things to work is very hard. On windows, I can just plug it in and it will either install automatically, or I can put in the included CD and get drivers. This doesn’t happen with linux. Many things are included. My machine here found network printers automatically, something that took a while to do on Windows. But it took several days of intensive work to get my wifi card working. Users expect things to “Just work”. They want their Flash and Java without working for it. They want their new video card to work without killing half their stuff and wading through a rescue mode.

3) Advertising. I know things usually come in 3’s, so this might be a stretch. But at a recent fair, we talked to many people that knew absolutely nothing about Linux. Hadn’t heard about it. Nothing. After talking with us, they where intrigued, and there is a fair chance that some of them will look more Linux.

The last one, we work on a lot. The other’s, it’s kinda hard. We have an email list, a wiki, and an IRC room, and live people, but it isn’t always enough. And some things are just out of our control.

Linux Users

Friday, April 11th, 2008

I’ve been involved with a local Linux User’s Group, or LUG. We’ve been focusing on putting on events that show users how to do this and that. We had one that was installing Fedora 7. We had one on some command line basics. We also put up tables during events, like our school’s recent Technology Fair, and pass out Live CDs and information, and some free Windows applications. We promote Free and Open Source Software and such. We have a mailing list and we have a server with some distros and such that is really fast on the school network. We even had the great Richard Stalman come out for a lecture. More on this on another day.

Anyway, we are planning a BarCamp, which has absolutely nothing to do with bars. More like FooBar. It’s kinda like a convention where you get a bunch of people together to use linux, but the idea is that there are few planned activities. It’s more or less spontaneous and anyone can teach and learn. And everything that is taught is suppose to be recorded, like on a Wiki. This should be really fun. If anyone is interested (I don’t know how many local people read this) let me know and I’ll link you to more info.

Learning New Languages

Friday, April 11th, 2008

One thing I mentioned previously is that I am learning Java. One of my classes dropped a project on me to program a tic-tac-toe program using client-server stuff, in java, and in a week. We where divided in groups, but the other members in my group didn’t really know either how to program or how to program in java. I didn’t know a bit of java before this, either. So I worked up about 90% of the code, learning java along the way.

One major thing I noticed is how much java makes you do think’s it’s way. Some people complain about RB compared to VB in that it is strongly typed and such. This makes you program how RB wants you do, but java has many more demands. Many of these things are with it’s strict OO system. But some things are just plain weird. For instance, there is the data primitive char, but you can’t do much with it. So you use the wrapper class Character, which adds in some methods and such, but makes it harder to deal with the actual data. Basically, dealing with the data anywhere is harder. But there are things that are silly. For instance, if you wanted to sort an array, it isn’t MyArray.sort() like you might think, but it’s not. It uses a helper class called Array that has the sort function that you pass in the array to sort. This seems like a weird way to apply OO principles.

But to be fair, Java isn’t nearly as bad as what I’ve heard. It takes getting use to, but it’s not horrible. It’s possible to compile native executables. It’s possible to make it look native on your platform. It isn’t that slow for GUI applications, and using an IDE liek Netbeans, it isn’t that hard to make a GUI. It still beats you up side the head with the way it wants things, but it’s possible and not that hard.

I’m going to post the project for this online when I get a chance.

Secondly, I’m re-learning some C stuff. I have an Operating systems class that involves using C (not C++) and doing some API calls, and a different way of thinking. I’ve made a shell program that I will post, as well. I also made a program to fake threads, but it isn’t very useful, so I might not post that.

Finally, I am still after my quest to make a compiler. I found an old tutorial on some practicalities. But it is very old. How old? 1988 old. Pascal old. 68k old. Yeah, old. But it’s a handy guide that I’m following, and I am going to see about translating what you get into C/C++ and maybe even to RB. When I get close to the end, I’ll post my findings.

New Post!

Thursday, April 10th, 2008

Duh, of course it’s a new post. But I am going to try and post a little more. I’ve built up some topics to actually post about. First up, an update on me.

I’m still trying to land an internship. I’ve sent out applications, but to no avail. I’m hoping that I can get something soon. It’s starting to worry me. It’s a requirement for graduation, so I need it this summer to graduate on time.

I’m doing pretty good with my classes. In one, I’m learning java. In another I’m learning about OS constructs. I’ll make it to another year, but silly gen ed classes are hurting me because I’m not that good at, say, anthropology.

I’ve been involved with the Linux Users Group here and we’ve been doing stuff. I’ll go into that a little more latter.

Finally, I bought a new digital camera because my other one was giving out. I got a rather nice 10MP Casio that works much better than my 2MP one. The old one was always taking blury pictures and sometimes wouldn’t work at all. This one has a nice big screen and takes good pictures. It was fairly cheep, finding it on clearence and all. So I’m rather pleased about that.

I’ll make a few posts about some of these topics and others to elaborate on them.