Slashdot Mirror


User: tknd

tknd's activity in the archive.

Stories
0
Comments
734
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 734

  1. Re:no CD/DVD drive bay? on Shuttle's $200 Linux PC Part of a Trend? · · Score: 4, Interesting

    I don't know about you but I am finding I use the optical drive less and less these days. It is much easier to just get a USB flash drive for portable storage and dump the remaining large files onto an external hard disk. New software tends to be downloaded rather than loaded from a disk. So CD/DVD media is only useful for movies and install disks for new OSes. If they start making faster bootable USB flash drives with downloadable image files then I probably will stop using optical drives all together.

  2. A lot to learn on What Skills Should Undergrads Have? · · Score: 1

    I only have 2.5 years of full time software engineering experience but in those 2.5 years I've seen and learned a lot.

    What seems to have troubled me from reading the article and user comments is that I do not feel as confident as I want to be in C, ASM and other related low-level programming topics.

    Good, that is how you should feel. What you will quickly find out in the real world is that there are very few masters of programming languages, a lot of mediocre programmers, and a whole boat load of bad ones. The best ones are the ones that are not proud of their skills and continually improve themselves. So that is lesson #1, ignore hubris and continuously improve your skill set or expertise.

    If you don't understand where to start, go dig up some of your first programs. Not the stupid "hello world" programs but the programs that actually did something. Read your own code you wrote years ago and be shocked that you wrote it. Hopefully you will understand that you could have written it better. Even the smallest details like variable name selection goes a long way. And when you're done with that, look forward and read someone else's code. Everyone likes to write new code because they don't have to read it...yet. The truth is we spend a lot of time in maintenance and improving code that could have been written better for different reasons (maintainability, bugs, design changes).

    How can I spend my free time in the next year to prepare to enter the work place with a proper toolbox of skills?

    Don't learn. DO. There is a big difference between learning about something and applying it. The easy part is learning. The hard part is applying and getting the experience. This is true for any topic not just technical things. There's a big reason why years of experience tends to trump all other factors.

    From what I have been told, there are more jobs for Java and Data Warehouse development teams compared to lower-level programmers.

    Go on a job listing board and look and investigate at what companies are interested in. Don't listen to what other people are telling you because they're probably speaking from their perspective and their desires. You have to figure out what you want to do. Call up the companies and see if you can ask them how they are using the technology. For example you will find most Java companies are not operating on plain J2SE but rather something like J2EE or J2ME. This is more than just Java, it is a set of other libraries and buzzwords that do other high level things for very specific problem domains.

    Figuring out the second part, what you want to do, is going to be very hard. No job description or even talk with interviewers is going to tell you what the job is like. The only full proof method I've found is to sit next to people and watch or observe how they operate or to take the job. That will show you what the job is truly like.

    As an undergrad, what skills should I be trying to attain now to further my employability in the future?

    I always say the following when I'm talking to my friends: If I could go back to being an undergrad, what I would do differently is not focus so much on my grades and my particular major--instead I would go back and minor or double major in a completely different topic to computer science like the social sciences, humanities, or business. I say this for a number of reasons: software engineers and even IT people don't spend all of their time in front of a computer with a text editor, a lot of time is spent working with people. The hardest problems I have encountered in the workplace were not technical in nature but social in nature. The most successful people in any industry, organization, or even group of friends are the people that understand other people and can communicate effectively.

    What I've responded to before were mainly technical questions you had. But now I will tell you that if you can understand and master what I've talked about in the last pa

  3. Re:XP solved problems, Vista creates them. on Vista Shipped On 39% of PCs In 2007 · · Score: 2, Insightful

    I call BS. Windows 98 was a dog on 16MB of RAM (from where Win95 ran acceptably). Windows 98 ran much better with 32MB of ram. Windows XP however was a dog even at 256MB. But Win2k (which you conveniently gloss over) ran well at that level.

    Vista often runs more sluggishly on the new machines than XP did on the old.

    This has been true of every Windows OS. Win95 slower than Win3.1. Win98 slower than Win95. Win2k slower than Win98se (why does everyone conveniently forget the whole 98se gaming benchmark enthusiasm?). WinXP slower than Win2k except in boot time (more ram required).

    But OS X and Linux are adding that, too, without all the extra overhead.

    Windows is fat, I'll give you that. But no OS is not putting on the pounds. Ubuntu documentation about hardware requirements says that the graphical system will suffer if you have less than 192MB of ram. And so I tried it. And yes, that was pretty horrible on a duron 600mhz with 192mb of ram. But I bet Win98se would have screamed.

    Why would anybody spend that much money for something that hardly benefits them at all, but benefits "the industry" a lot?

    Explain ipods, gps, and other gadgetry. Explain all the stupid CD/DVD software at the retail stores when you can download open source equivalents that actually get the job done right. People are sold on things all the time.

    Vista's retail costs are quite steep, but oem is still just as cheap. You can easily get a refurb dell box with ridiculous hardware specs on the low end (dual core, at least 1gb of ram) for around $300.

    I don't even understand why I'm responding to you. It is clear you have not used vista with your generalized claims.

  4. Re:software engineering != computer science on Professors Slam Java As "Damaging" To Students · · Score: 1

    C is best thought of as a very powerful assembly preprocessor. I know that sounds harsh but when I look at a chunk of C code I have a pretty good idea of the assembly language the compiler is going to emit.

    Strongly disagree. Code generated is entirely up to the compiler. You have to understand your compiler(s) just as much as you have to understand the VM(s) in Java.

    The abstractions don't end there either. The CPU can also have it's own quirks solved or changed between models and microcode.

  5. date of the satellite images on Using Google Earth to Find Ancient Cities · · Score: 1, Funny

    The reason why these archaeologists are having so much success is because Google's satellite imagery is ancient!

    I mean, rather than seeing some roads near my house all I see is dirt and trees!

  6. Re:Benefit of SETI on 500-fold Increase in Data Flow from SETI Telescope · · Score: 1

    Right now, SETI is just as much a fool's game as the lottery, more so if we consider that we at least know that there's a prize at the end of the lottery.

    Oh, it is far worse than that. With the lottery there is usually at least one winner on every round. With SETI there is the possibility that we may never find life using their method.

    I'm all for finding aliens, just do so in a more thoughtful way. For example I'm all for figuring out how to get to Mars and back. SETI is probably closer to something like people sitting at the beach waiting for a bottle with a message (in their native language of course!) to come straight at them.

  7. Re:"I have no clue how to write a good one." on GUI Design Book Recommendations? · · Score: 1

    follow the same design principles as the target OS and applications with similar functionality as yours

    And what if the principles in the target OS are actually incredibly wrong?

    One example is "double click". In most environments today, you have to "double click" and icon but single click everything else. The result? People start double-clicking things that look like icons on the internet even though they're supposed to single click them.

    Its a catch 22. You can either choose to be consistent and follow the same mistakes as everyone has in the past or you can try to fix the problem at the cost of not being consistent and have people double click things they shouldn't. Either way you lose: some people suck at double clicking and will hate you for it while in the opposite direction people will double click everything.

    Another more personal example is a game I used to play. I thought the UI was horrible. It did not scale with the screen resolution so the elements looked incredibly tiny on a very high resolution. It was obvious the UI was made to be "pretty" rather that useful (because games are supposed to be pretty right?). The defaults focused on moving the controls to the outer edges of the screen but during actual game play your mouse is usually on the center of the screen as well as your eyes--so switching your view off the center of the screen to your life bar that was on the bottom right corner could easily get you killed. The UI elements, when left open, would cover up the screen with unnecessary artwork, so when an enemy was coming from the side you would not see them until they got past the UI's windows. The life bar was ordered in a non-optimal fashion such that your enemy's life bar was far away from yours--so in the heat of a battle it was not clear exactly how you compared to your enemy without your own visual guestimation (which could be wildly off because you rarely had time to stare at your lifebar). And the list goes on and on.

    Nobody dared to change the UI scheme for this game. Everyone instead just made new pretty UIs with even more graphics to hide your field of vision. People, not aware that the UI was actually not very usable, didn't care because pretty graphics sell. Yet the UI played an incredibly important role in this game. The battles were insanely fast. Decisions had to be made in split seconds. Every 10th of a second taken away from the player is a lost 10th second against the player in what might amount to a 30 second fight with one loser and one winner.

    So I set out an ripped the UI to shreds and went against many consistencies of the old and flawed UIs. I didn't care that I had to relearn how to read my UI. If it meant I ultimately had what would amount to a 5 second advantage in decision making time or getting information to my head a 10th of a second faster than my enemy, it was well worth it because in a 30 second fight, 5 seconds is 16% of the time. I made the life bars nearly double the size and re-ordered them so that my lifebar and my enemy's were flushing on top of each other--it made is dead clear whether I had more life or my enemy had more. I got rid of a majority of the fancy graphics and backgrounds and either made them transparent or not show up at all--so even when you had a window on the edge you could still see what was behind it. In my screenshots I moved the most important UI elements (the ones that give you information) to the center of the screen rather than the corners--now I didn't have to keep flipping my eyes around the screen to get information, instead it was all in one place.

    Then I decided to let everyone else try it if they so chose. I was very quiet about releasing the UI to the public. I made a simple thread on the forum and didn't make any effort to keep it on the front page. I didn't care, the fewer people that knew about it the better off I was. But then it tipped and caught on like wild-fire. Before I knew it I was seeing nearly a third of all people I met in the game using

  8. Observe a user on GUI Design Book Recommendations? · · Score: 1

    So far most people here have said "go read HCI book Z" or offered their own opinions on what you ought to do. Reading the books is a good start but I think you will find that after going through the material, you'll come across a lot of things that make sense yet, try to apply them, yet still fail miserably in your endeavor. That's because nobody has told you the hows. They've only told you the "whats".

    So ultimately, here is how you can learn the "how":

    Take a piece of software or some gadget. It can even be a web page or something like a GPS receiver. Now that you've decided, write up a couple tasks for using the object. If it is an online furniture store for example, say "task 1: add king size bed with dark wooden frame to cart". And keep going until you've got a pretty realistic list of tasks someone would do using that software or hardware.

    Now go find 3 to 4 of your friends who aren't really geeks or nerds. Try to pick from a variety of people: females and males, old and young. Usually it is best to get people that are not familiar with the object you're testing.

    Now sit down with each of them individually and say plainly, "I'm conducting a usability test. My objective is to observe how people use this object. The goal is not for you to complete each task, but for me to observe how people can or cannot use the object's interface." Once they understand that they are not being tested, but rather the object's interface, start with your first task you thought of. While they are performing the task, tell them to try to "think out loud" so you can have a better view of what they're trying to do. Don't tell them how to complete the task or anything about how to use the interface. When they ask a question about how something works or what they should do, just say "I can't answer that" or "I don't know." Don't put them down, and if they give up or they don't think they can complete the task tell them it is all right and move on.

    Your goal in this process is to observe how people (humans) use an interface. That is why you cannot tell them how or give them any instructions. You simply say "this is the task" and observe. As they're working you try to ask open questions about what they're thinking or why they did something even if it was lightning fast or snail slow. If they click on something that is obviously wrong, don't tell them "that's wrong", instead ask them "why did you click on that?" or "did that do what you expected it to do?" You are trying to figure out their thought process to hopefully gain insight as to why they are not completing the task. Keep in mind that there is nothing wrong with the person, but rather that the problems exist in the interfaces. You won't get anywhere if you start coming up with reasons to blame your users for their faults in using the interface.

    The results are very eye-opening when you first do this. In my first study we came up with a list of tasks and thought they were pretty simple. But when we observed different people attempting the tasks incredibly simple things had all sorts of problems. On many tasks the people failed or couldn't complete. On some tasks that seemed complex, people were still able to finish. In short, it is actually pretty common to see things all over the map on an untested and new interface.

    This will do a number of things for you:

    • You will have learned how to conduct a face-to-face usability test: you come up with a list of common tasks for your software, find a bunch of people who are not familiar with it, have them run through the tests while you take notes or even record them on a camera.
    • You will see first-hand that designing interfaces is hard and that people come from all sorts of different backgrounds which influence how they use the interface.
    • You will hopefully find areas where the interface is particularly weak: this usually involves areas where the users simply could not complete the tasks.
    • You will hopefully find areas where the
  9. Re:Mod parent down, -1 bullshit on Linux And Unix Devices Popular On Amazon's 'Best of '07' List · · Score: 1

    Apple have 3 models of Macbook, and 3 of Pro, each of which have a separate amazon listing.

    The only word he chose incorrectly was "model" but I think he meant "line". So a product line of macbooks. A product line of macbook pros.

    And his point still remains. There is only one manufacturer for Apple while there are multiple manufacturers of PCs (Toshiba, Sony, HP, Lenovo). If each of these manufacturers only had two models of notebooks each, they would still have more models than Apple (4 * 2 = 8). But they probably don't, they probably have just as many as Apple does (6 each).

  10. Re:NEWSFLASH! MP3's suck. Use a lossless CODEC. on The Death of High Fidelity · · Score: 1

    Sony stuff tends to focus on the top and bottom ranges and forgets about the middle. That's probably why your old CD player sounds better than your mp3 on your computer. In order to really claim that you can tell a difference you need to use the same device from the player all the way to the head phones.

    In my own tests I have found that every thing can alter the sound from the decoder algorithm to the sound card to the head phones. For example I have 2 mp3 players, one is an old creative muvo and another is a sansa e250. If I take the same mp3 file encoded poorly (128 or lower) the sansa shows noticeable audio crappiness while the creative player tends to cover up for a lot of the mp3's artifacts. But if I take a high good 320 bitrate mp3, the difference between the two becomes very small.

    Also I've gone through a ton of head phones until I finally gave up. It seems like most manufacturers just load their head phones with all the bass they can even if it means sacrificing the mid range. For pop music that might make sense since there's rarely actual music or even intruments in pop stuff. The same is true for speakers. I like logitech mice but I hate their speakers. Everyone seems to disagree with me but I always feel that logitech speakers have no mid range at all.

    I've found that with lamemp3, 192 ABR or VBR with -q 2 or -h is probably the best compression you can get without sacraficing quality even for high-end audio equipment. If you push the quality on lamemp3 all the way (-q 0) it starts producing artifacts in the highs that are easy to detect when the bitrate gets too low. But if you drop the quality to the default level (-h) then it does not do that. So I honestly think it is your sony cd player that has some built-in eq or something to make the bass sound better because I've never had issues with 192 bitrate mp3s encoded by myself.

  11. Re:Why the shortage? on Retail Store Scalping Wii Consoles on eBay · · Score: 5, Interesting

    Does anyone have the inside scoop on why -- over a year after introducing this product -- Nintendo has not been able to ramp production up to meet demand? It wasn't a surprise that they couldn't meet demand last Christmas. But, this time around they've had a full year to get the production line up to speed.

    I don't have the inside scoop but it isn't hard to see what is going on when you know a thing or two about business.

    Suppose you are going into business for developing a widget and you have determined that you can sell the widget for $15. Now suppose that to make the widget you have two components: fixed cost and variable cost. The fixed cost you (almost) can't do anything about; whether you make 1 widget or 1 million this cost stays the same (later we'll see that isn't necessarily true, but it still works against you). Fixed cost would include something like the cost of the building for your factory. Even if your factory only produces one widget, you still gotta pay for the building. So then there's variable cost which as you might guess is the cost associated with each particular widget--it increases and decreases depending on how many widgets you make. Variable cost would include things like raw material or parts you buy from a supplier. When you order more, the cost goes up, when you order less, the cost goes down.

    So let's say for your widgets, which are special widgets that only you know how to manufacture, have a variable cost of $5 but a fixed cost of $2,000,000 a month. And that fixed cost only applies to one factory that can make your widgets. Let say if you wanted two factories making widgets, your fixed cost would roughly double to $4,000,000 a month. But we'll only consider one factory for now. So how many widgets do you have to make and sell to break even? Simple, that's just the fixed cost divided by the contribution margin where the contribution margin is the sale price less the variable cost: $2,000,000 / ($15 - $5) = 200,000 units per a month.

    Now throughout this we have not considered the capacity of the factory. So let's say that the factory can produce up to maximum of 300,000 units a month. Well, 300,000 is greater than your breakeven which is 200,000 units so you can actually make money off of this factory as long as it produces more than 200,000 and you sell all of those units. Easy enough.

    But now you start selling your widget and notice that because your widget is really special, it is in hot demand. But you recognize that at some point, demand will drop when everyone who wants one of your widget will have one. So let's say demand for your widget turns out to be 400,000 units a month. HMMMM. We have a problem. Your single factory can only produce a maximum of 300,000 widgets per a month so in order to meet demand you would have to setup another factory to produce the remaining 100,000. If you setup the additional factory your fixed costs will jump to $4,000,000 instead of $2,000,000 a month. If we now recalculate your break-even point, it will be: $4,000,000 / ($15 - $5) = 400,000 units per a month. But you've already determined that demand is only 400,000 units a month so by setting up the additional factory, suddenly you are no longer making a profit!

    To summarize:

    ASSUMPTIONS
    Fixed cost of factory: $2,000,000 a month
    Factory capacity: 300,000 units a month
    Variable cost per unit: $5
    Actual product demand: 400,000 units a month
    Selling price of the unit: $15

    Break-even point on one factory: $2,000,000 / ($15 - $5) = 200,000 units
    Profit on actual demand (meeting 75% of demand): (300,000 - 200,000) * ($15 - $5) = $1,000,000 a month

    Break-even point on two factories: $4,000,000 / ($15 - $5) = 400,000 units
    Profit on actual demand (meeting 100% of demand): (400,000 - 400,000) * ($15 - $5) = $0 a month

    Nintendo's situation probably has vastly different numbers but the same concept applies. If the make a speci

  12. Re:too clever for its own good. on The Advantages of Upgrading From Vista To XP · · Score: 1

    I have multiple computers: A Dell AMD X2 3800+ with 1gb of ram run Vista, a custom built computer with an X2 3800+ with 3GB of ram running Windows XP, an older generation AMD K7 with 512MB of ram running ubuntu. My parents use the dell while I use the other two mentioned computers.

    No crazy graphic bugs

    I haven't seen any graphics bugs on the Vista machine. From time to time on my XP machine, however, the icons mysteriously disappear (they're still there but you can't click on them).

    It's faster and more responsive

    In what way? My dell vista machine instantly starts firefox. My XP computer takes 5 or so seconds to load firefox. The vista machine does boot slower from a cold start but both machines take sufficiently long to boot. The Vista machine however is usually just put into a low power sleep state (uses 4 watts at the plug) and wakes up withing a few seconds. So I rarely "boot" the vista machine but I always boot the XP machine.

    No system lock on login

    Never had this issue.

    Automatic update is less resource hungry

    Ok.

    Drivers are stable

    There are stable drivers on Vista too. The dell machine has yet to crash.

    Drivers are easy to find

    True. But that's been true of any OS that made changes to the driver model. For the longest time my sound card didn't work when I switched to Win2k because there were no Win2k sound drivers for it.

    Drivers are reliable

    This is the same as two points above.

    Requires less hardware

    True. But I'm finding it really really hard to buy old and slow hardware these days. Nearly all computers sold at the store are now dual core including laptops. RAM is ridiculously cheap at about $25 for a 1gb ddr2 stick.

    Much more reliable generally

    If I had to rate my machines in reliability the ubuntu and vista machines would be on top while the XP machines would be on the bottom. Of course this sample is too small to determine anything.

    Internet Explorer 7 doesn't crash

    I don't use IE.

    Less need to reboot

    I reboot my XP machine daily. The vista machine never reboots unless updates require it to.

    Ctrl-Alt-Del actually works and can prevent a hard-reset

    I haven't run into a situation where the vista machine needed ctrl+alt+del. I don't even use it on XP because task manager is easier to get to by right clicking the task bar and selecting task manager. Even if you repeatedly push ctrl+alt+del on an XP machine it won't do any good for you. I have had XP processes that I could not kill no matter what I did for times when XP would not shut down because it was too stupid to wait for a process to shut itself down.

    Games are more responsive, have higher frame rates and are more reliable

    I don't play games. But I do remember all of the benchmarks comparing Win98se to Win2k for games. Win98se was always faster than Win2k. It's like deja vu all over again except everyone conveniently forgets what happened in the past.

    Better multimedia support

    I don't do much there either.

    No DRM

    Everyone gives MS a lock of crap for putting the HD DRM support yet nobody blames Apple for using DRM with ipod and itunes. Sure, Steve Jobs gives you a small loop hole to get around it but that's not the point. The point is any sane business has no choice but to support some form of DRM until the other **AAs can be convinced otherwise.

    I don't even understand why I'm responding to this other than to say that the article's anecdotal evidence is flawed. There are other people like me who have experienced otherwise. But carry on with your daily MS bashing / free karma rants.

  13. Re:Wolf! on Auto Mileage Standards Raised to 35 mpg · · Score: 1

    You can't attribute all of the increased cost towards clean air equipment. You also have to account for increased safety standards and new tech (standard ac, mp3 car stereo, better car sensors for monitoring maintenance and part failures).

  14. Re:Tactic to gain more ground? on Microsoft Giving Away Vista Ultimate, With a Catch · · Score: 4, Informative

    It's not a tactic to gain ground. It is a strategy commonly used to gain survey information. It is exactly like how you will often see a survey that says, "Get a chance at winning an ipod after completing this survey" kind of deals.

    Why would Microsoft need to conduct a survey that requires generating statistics on how you use your computer? Simple, it is to determine usability statistics. That type of data can then be used to influence the design of the user interface.

    For example if the data shows that for a particular window in say the control panel, the most user's mouse movement is dramatically higher than with some other window, that means that the window with high mouse movement is a candidate for reorganization. That is because the longer you take to move your mouse, the less efficient you are.

    You can also see what functions your users are using the most and what functions they rarely use. So say you have a toolbar with 10 buttons and out of those 10 buttons only 2 are used by almost everyone while the other 8 are rarely touched. This suggests that you may want to make those 2 functions that are used always to be more accessible either with a hotkey or by making those specific buttons bigger so they are easier to click and you may want to evaluate if the other 8 buttons are even worth having there. Likewise if you see people always using the menu functions rather than using the toolbar buttns you may want to investigate why this is or consider labeling the buttons.

    Big software companies including Microsoft typically conduct in-person usability tests. But these types of tests can only go so far. That's probably why they are turning to these larger usability tests so they can get more general data about the greater population rather than a small set of people they can get into their labs.

    For the uninformed in-person usability tests work as follows: You have a piece of software that you want to evaluate the usability of. To test how usable it is, you come up with a list of tasks for the user to do, like say open their email software and write a hello email to their buddy, or say deleting files named "a", "b", and "c". After you have the tasks you want your user to perform, you people unrelated to the project with varying degrees of knowledge about computers and your software to perform each task. As they attemp the task, your objective is to observer--that is you don't tell them anything even if they are obviously having issues getting the task completed or even if they ask you a question about how to do it. You simply tell them what they're supposed to do and watch, and if they look at you and give up, you say "that's fine" and just note that they were not able to complete the task.

    The results of usability testing are pretty amazing for first time usability observers even for some very simple tasks with common software and gadgets. You will also recognize that there are lots of moments where people just sit there and do nothing, times when they keep repeating actions, and times when they keep clicking on something because they think it does something but it doesn't. Some really simple tasks also will show many users all with different ways of accomplishing it. For example if you delete a file how many ways are there to delete it? Well one way is to drag the file to the recycle bin. Another way is to click on it and hit the delete key. Another way is to right-click it and use the context menu delete option. And yet another way is to first open your trash bin and then drag the file to the opened trash bin. All of these ways are valid and I'm willing to bet there will be even a few more ways of deleting files that you'd never have thought of (besides the rm command).

    The nice thing about in-person usability testing (as I just described) is that you can ask questions and probe for information about what the person is thinking while they're doing the task. Normally you ask them to think out loud so you can get an idea of what's going on in their mind.

  15. Re:Well, these companies show their true colors on Ogg Vorbis / Theora Language Removed From HTML5 Spec · · Score: 1

    Apple has always had its platform, which has been the "Apple Platform" from top to bottom. Their strategy has been to develop and sell that platform; other companies can interact with that in generally designated ways. All of their development efforts are within this closed model.

    How is this not a monopoly? How is this not anticompetitive? The Apple platform itself is a barrier to entry. You can't legally make and sell a computer that runs Apple's OSX on it without making a deal with Apple. Of course that deal will never occur because they know they will be shooting themselves in the foot by allowing you to compete on their platform.

    You can argue that Apple under Jobs would do the same thing if they could, but there just isn't any evidence.

    Do yourself a favor and go take a managerial finance class or read a book about it. In those classes and books, you'll probably hear or read a statement that states, "The goal is to maximize shareholder wealth." I don't care who you are, but when you are running a business your goal is wealth of the owners. Not serving your customers, not trying not to be evil, but to maximize your shareholder's wealth.

    So you're running a company. You go out, and conquer, and become a monopoly in a particular niche. Is that it? Do you say, "ok, we won, time to stop trying new things shareholders." Of course not! Your goal is still to maximize shareholder wealth. So why would you not start entering other markets and attempt to become a monopoly in those as well? The only company that will act with happy rainbows and call it quits when it knows it is evil is a company owned and run by people with the same intentions. But last I checked AAPL stock was traded publicly.

    So while you are quick to claim the grandparent ignorant, you yourself are also ignorant about the nature and goals of businesses in general.

  16. Re:Same here on Are You Proud of Your Code? · · Score: 1

    the problem is... the client doesn't always know what he wants, and the continuous changing of the specs (and hence of the code) make it a mess

    Is that really the only side of the problem? From this, you're assuming that the developers are able to adequately translate what the customer says he wants into appropriate specs but that's far from reality. The truth is many developers are really bad at obtaining requirements and it is only more complex when the customer is not good at it either. Now you have two entities incapable of communicating ideas trying to find a solution, together. As one can imagine, that will only lead to many failed attempts before an adequate solution is found.

    It is quite sad because most undergraduate CS majors are not taught requirements engineering. At my school I was lucky enough to have the option of taking an advanced requirements engineering course that specifically dealt with understanding the complexities and issues in requirements engineering. In the first lecture one of the first activities was to guess what type of object our professor was thinking of with no information. He merely said, "I'm thinking of an object, what is it?" Of course nobody could answer his question, so he told us to ask him about the object. Students naively started with questions that were too direct, like "Is it a book?" To which our professor would answer, "No." After his answer he would ask us a question, "Did this question get you the information you wanted?" And of course the student would say no. Students continually tried asking questions until they realized they should not be asking questions about what the object is, but questions that would get them information in classifying the object. The key point in this lesson is, every question you ask must have a goal in gaining you information regardless of what the answer is. That is not an easy task, but it can be done.

    Another missed issue in requirements I've seen to date is they completely ignore the problem itself. They go straight to documenting different traits of the software to be produced rather than addressing what problem(s) the software is supposed to solve. We don't build software because we want to, every piece of software built is built to satisfy a problem that other types of software did not solve or do not solve well. The first item in any requirements document should be a problem statement--the overall issue your software addresses. It even applies to things that seem like they solve no problems. Take for instance a video game. Video games don't solve problems, do they? Actually they do. They entertain people, they provide experiences for people that are not possible in the real world.

    The final issue that plagues software engineers and programmers is lack of social and communication skills. In my requirements engineering class, we did not touch one line of code or even one UML diagram. Use cases are fine and dandy, but you can't get to a use case unless you really understand what you're customer wants. If you go straight to use cases you're back to guessing things just like the "Is this a book?" question. Everything was focused on dealing with the customer. That meant issues like talking to the customer, negotiating with the customer, and being able to translate what the customer said into requirements.

    At the end of the day, the customer can be whoever they want to be and have incredibly bad communication skills. They can ask you for the world and you can't say anything other than refuse their offer. The reason why they can be bad customers is because they have the money. If you want their money, you have no choice but to get better at requirements engineering.

  17. Maintenance on Crowdsourcing Software Development to the Masses · · Score: 4, Insightful

    Building new things is great and all but any sane software engineer will understand that maintaining the software is a much harder and more complex problem than building the first version. Even if you pick the best built components, at some point later your customers are going to want a new feature or want a broken feature fixed. I don't think you can simply hold a competition to figure out who can submit the best maintenance job. Additionally, once the competitors submit their entries, they have no further obligation to work for you. So you've essentially lost the most important assets (the people that wrote the stuff) on the day you receive the finished the work. You could always have your own people maintain it but they will be much more costly than had you kept the original authors who do not need to re-learn the code.

  18. Re:Teaching Graphic Design on Old Software or Open Source? · · Score: 1

    Ok, so teach the concepts, teach the method, but don't teach the tool. I agree. But now assume two students are given the same education however one is taught with Photoshop and the other is taught with GIMP. Both students are equally capable with the only difference in being their knowledge of different tools. They then go to look for a job and the job market and practically every job says "Photoshop skills required." Which student is going to get hired?

    You can do this for any technology related thing from programming languages to simple things like MS Word. But if you do choose to learn a less popular tool, you are severely limiting your options in the future unless you go back and learn the common tools. You can always say, "I can certainly do that well with comparable tool X." But they're just going to turn around and say, "We work in industry standard Y therefore we do not have the time and money to train or wait for you to learn it."

  19. Acrobat or Reader? on PDF Is Now ISO 32000 · · Score: 2, Interesting

    I don't know about you but Adobe Reader 8 is quite a bit better than the previous versions (loads incredibly fast now).

  20. Re:Vistard can kiss my shiny Java ass... on Leopard as the New Vista? · · Score: 2, Insightful

    It's funny because you describe something that I recently saw. I don't have a Mac, but my sister has a powerbook and upgraded to Leopard. She wanted some help with her website and had it all designed out in Illustrator. The quick way to make a site out of it was to make an imagemap but that required Photoshop. As soon as she opened Photoshop, it crashed. Sure, CS3 is Adobe software not Apple's but with all the fanfare and claims by Mac people I was expecting a pristine and awesome experience on OSX.

    Another annoying thing I found was the stupid file browser or application browser thing. A third of the window is given to an itunes-like view of the program's icon with all the other programs stacked like a jukebox disc off to the sides. It was completely useless and only offered "bling". For a second I thought it was designed by Microsoft.

    After that I was convinced. There is no such thing as a "perfect" computing experience--you know, like the "it just works" marketin...err...idea. Anyone that claims so is full of shit and/or trying to sell you something. There are only "better" computing experiences. I won't deny that Apple might have the best game in town or have better products than competitor "M", but people need to stop bending over to Jobs and friends. All you're doing is inflating their egos and it shows in their TV commercials.

  21. Re:What features? on Quality Open Source Calendaring / Scheduling? · · Score: 1

    There's also the auto-scan next button. Meeting recurrences (every week, every other week, nearly any combination), reminder times, hovering your mouse over blue bars (meetings) will show the meeting title if it is public, accept/decline/tentative confirmations, and the list goes on and on...

  22. You should be disappointed on Google Summer of Code Extends to Highschoolers · · Score: 2, Interesting

    When I went to high school, I participated in a program called ThinkQuest in 1999 and 2000. At the time it was run by an organization called advanced.org. Since then, Oracle has continued the program and it has changed for the worse. But back then, this program is probably a good portion of the reason behind my educational successes, my increased knowledge base, and some really good lessons learned that I would have never had otherwise.

    ThinkQuest in those years was a pretty amazing program. You worked in teams of up to three students and international collaboration was required. In addition you could have two coaches which served more as mentors rather than coaches. The objective of the project was to build a educational website on nearly any topic. The website, whether it won or not, would be hosted and displayed on the web free of charge. The teams that won were awarded scholarships in sums of $5000, $10,000, and $15,000 per a student. That meant that if your team won first place, each of the students on the team was awarded $15,000 in scholarship money. There were 5 or 6 different categories and each category had a first place price. There was also a best of competition prize which had a sum of $25,000 per each student I think.

    The program in a few words was awesome. There were no defined goals or constraints on what you could do other than that the website had to be for good educational purposes. Everything was totally in your control and up to you and that included content research, website development, and any innovation. Some websites had games and other flashy things. It was all acceptable.

    I participated two years in a row. My team was completely international (US, Germany, Singapore) but we lost contact with the Singapore guy shortly after the formation of the team. In short, we failed with just two of us putting in effort and it was our first stab at the competition. But we learned a lot and I gained at least one valuable team member. The second year we added a Hong Kong team member and dumped the other guy for obvious reasons. We revamped the content and added more things that we hoped we would accomplish to make the site more interactive and we went to the finals to meet each other in person for the first time.

    Looking back I am glad I took the opportunity for tons of reasons and I wish more students had the same opportunity I did. You got to meet different international individuals and overcome something seemingly impossible and challenging. But you didn't care, you were a carefree high school student. Today, people doing the same thing would be considered entrepreneurs and it is much scarier because your paycheck and credibility is on the line. Just like we failed the first time we learned what not to do (we made sure we recruited someone with previous competition experience) but many people don't have that experience or are too afraid to take the risks.

    In addition after winning the competition many big successes shortly came after. It was probably one of the major reasons why I was accepted to universities and why I was offered a technical job in high school. It also stimulated me to accelerate my knowledge and learning abilities because I had no choice but to learn new things like web development in order to compete. Had I not had that experience I probably would have suffered just like everyone else in college because I would have wasted all my time in high school doing stupid things like watching tv or playing games.

    So you're right. You should be disappointed. This is actually a poorly designed competition for your benefit.

  23. Re:WTF? Sony for $3k, Asus for $350? on Sony's Flash-Based Notebook Reviewed · · Score: 2, Informative

    The chip is rated at 900Mhz and some reviews quote 900Mhz but if you go to here you'll find that people have been trying to figure out how to get it to run at that speed for quite a while. It turns out that the FSB is set to 70mhz making the actual CPU speed 630Mhz (I wrote the wrong number earlier). Other BIOSes are available that have allowed 100Mhz FSB but causes artifacts like waves or stability issues.

  24. Re:Games aren't enough for the average user on More Evidence That XP is Vista's Main Competitor · · Score: 1

    Quite frankly, I can think of NO reason for an average consumer to even need to pay for an OS aside from being able to play games.

    I can. One day he is going to go to the store and come home with a gadget only to find out that it is not compatible with his OS. It is not his fault that the hardware does not work, in fact I don't think it is anyone's fault. At the end of the day we work in a system that wants to capitalize which can cause things not to cooperate together. Does limiting your options for available hardware/software warrant the cost/savings for jumping to a new OS? For most people on slashdot that answer is probably yes, but for people who do not know a *nix geek, the answer is probably no.

  25. Re:WTF? Sony for $3k, Asus for $350? on Sony's Flash-Based Notebook Reviewed · · Score: 4, Informative

    The Asus was designed to be small and cheap while the Sony was designed to be expensive and powerful. The hardware is quite a bit different: 1.2ghz dual core vs 675mhz single core, 4GB SSD vs 32GB SSD, different screen sizes.

    I don't see it as a bad thing because more products = more options = better for consumers. Also more products using SSD = higher SSD demand = more SSD R&D = cheaper and/or better SSDs. If all major PC manufacturers have legitimate products for sale with SSDs, then within a year or two SSD should really start putting pressure on hard drives and become even more affordable.

    So I say good for Sony. I won't buy their laptop but if it gets another SSD manufacturer some cash flow then it only means more potential for SSD growth in the future.