Re:Google does this.
on
Accurate OCR?
·
· Score: 2, Insightful
This used to impress the hell out of me. Then I realized how they can appear to deliver perfect OCR:
You don't know what you're missing.
If the OCR fails, you don't get the hit. So long as you never see any false positives, the OCR appears to be batting 1000. In reality there might be a few catalogs that it misses because the OCR didn't work. You just never know.
Compare this to OCRing a document. Every error stands out.
Don't get me wrong, I'm still impressed by Google. They are just solving the 'easier' side of the problem.
HA! You think you have it hard? I don't even have copper wire! Try breaking into a NOC and reading slashdot straight from the fiber with your remaining eye!
The only way to move Governor Davis to action is with a bribe^H contribution. His signature probably costs a bit more than a toner cartridge, but not much. Check out egray.org to see what the going rate is.
Most junk faxers are small businesses who contract through a faxing service. The faxing service uses special fax servers to send, so the old black construction paper trick won't help. At best you tie up a channel on their PRI.
Others have mentioned that you can use various laws, including the TCPA to go after the small businesses. You may also try contacting the major mass-fax houses. Ask to be added to any dontfax list they have. From what I recall the TCPA does not require the mass fax houses themselves maintain a list. You may try to get around this by asking to be added to the dont send list of all their clients. At the very least it would be a headache for them and some documentation if you ever wanted to sue. It's a longshot, but you never know.
because PHP tends mixes content / presentation and control
It's the programmers that tend to mix the layers, not the language itself. You might think PHP's ability to mix logic and presentation is a fault. I disagree. Let's take a look at some of the things that Larry said about Perl, and apply them to PHP:
As for Perl, it has never been "structured" in that sense, though it has always been structured in the sense that you can create as much structure as you like. The whole point is that the structure is optional, not imposed externally.
This describes the PHP situation fairly accurately. As the programmer, you get to determine the level of structure. This week I've worked on two applications in PHP. One of them is a very unstructured little script so that my brother can get my dynamic IP address. The other is an OO content management system that uses templates for everything. If I had to use highly structured techniques for the first script, it would have been too much of a hassle to bother. If I'd written the second application in unstructured blender mode, I might as well not have bothered.
Now I'm not going to say that I haven't written big projects in an unstructured manner. I've also over-structured small projects. When you wield flexibility, sometimes the gun gets pointed at your foot.
Back to Larry: You have to have discipline to do programming in the large, but you'll choose the discipline by turning up the big discipline knob yourself, not by having someone else turn it up for you.
This is a philosophical decision, but it's one that I tend to agree with. Having the structures available lets you work on large projects. Not forcing you to use them lets you scratch the little itches. There is a ton of bad PHP out there, but that is the programmer's fault, not the language's.
Canned air (cleaning, and if you turn it upside down you can use it as freeze spray and isolate components that are having heat-related failures)
You've got some good stuff in your kit, but this one scares me. A nice thick layer of frost on your electronics is a great way to release the magic smoke. Plus I can't imagine the thermal shock is good for your components.
I can't say that I've seen too many heat related failures on stock hardware. Overclocked stuff, sure, but not your typical business computer. The few times I have, it's always been pretty obvious. Dead fans, computer buried under stuff, dead AC in the server room, that kind of thing. Certainly nothing I'd hit with a refrigerant just to see if it made a difference. Of course, I've also never gotten a paying gig to put togeter a water cooler or a fanbus. Maybe you're just having more fun.
I'd add a mirror or two to the kit. Maybe some duct tape. A punchdown tool for doing phone wiring is also handy (if you ever get stuck doing that sort of thing). One of my favorite tools was a nice hand cart. Nothing like moving five systems without much effort. On the softer side, a blank floppy, a couple of CD-R's and maybe a USB keychain drive might be useful. Sometimes you can't get the NIC working without sneakernetting something over. A good pocketknife can also be useful for quick jobs and cuts that you cant make with snips. Throw in some cables, adaptors, gender changers and you'd have a pretty solid kit.
Compared to auot mechanics, IT guys get off pretty easy. A hundred bucks of tools is almost overkill for a PC. That wont even get the sparkplugs changed on some cars. Experience will tell you what you need, what to buy, what to improvise and what you can't live without.
I'd recommend taking an intro chem class at a local junior college. Around here that costs less than a hundred bucks, plus the cost of books. This is important, because you need to learn basic skills that you don't get from reading more advanced (interesting) texts. Things like balancing chemical equations and stoichiometry are foundational and should not be glossed over. You'll also get a nice survey of the different parts of the field.
Taking a class also has another important benefit: access to a lab. Don't discount the value of hands on experience. Chemistry is a lab science and you should spend some time doing wet chemistry. Since most chemistry is too expensive to do at home (a poorly equipped home lab can cost thousands), this is a good cheap way to do it.
Next off, I'd recommend the Chemical Demonstrations series by Bassam Shakhashiri. I can only find the first one at amazon, but I think there are at least four. Most of the reactions that he gives are pretty entertaining and provide interesting ways to learn the concepts. If you can get the chance to do a few of the demos, go for it.
If you're still interested, I'd recommend taking an intro organic class, and whatever analytical chem you can find. The labs that go along with these classes are a blast and the content is more than worthwhile. At the JC level you've probably only blown a few hundred dollars on classes and books, and earned it all back in the time spend doing labs.
Once you've got the concepts down, the newsgroup sci.chem is pretty entertaining. Uncle Al is a kook who seems to a little about every facet of the field. At the very least, you'll get an idea of the real world problems that non academic lab chemists are working on.
By now you'll have found part of the field you enjoy. I liked analytical chem and spectrophotometry. Mainly because you can hack on equipment as well as chemicals. Try building some of your own lab equipment. Making a good balance is a challenge, building a homebrew spectrophotometer is a bit tougher. The amount you can learn from these projects is priceless. If that isn't your cup of tea, try doing simple chemical analysis around your home. pH is pretty easy to work with on a small scale, chlorine in the water might also be doable. Electroplating can also be fun. You'll need to buy some equipment, reagents and standards. Chemists have an old joke about analysis: You can have it cheap, fast and accurate. Pick any two. For messing around at home, start with cheap and prioritize the rest. Look for shortcuts and see how these shortcuts effect the outcome of you're experiment. The fun comes with the process, not the results.
At home I'd stay away from toxics and large quantities of flammable or corrosive materials. If you can't put it down the drain with copious amounts of water, chances are you don't want large quantities of it around. Strong acids and bases demand some respect, particularly HNO3. I got a nasty nitric acid burn in college and my skin was yellow and crusty for weeks. Nitric acid also produces 'smog' in many of it's reactions so ventilation is required. You'll learn the saftey stuff in class. Follow it wherever you are. I've worked in plating shops where acids where stored next to cyanide salts. Not good. Learn how not to kill yourself before working with anything that can kill you.
Chemistry is a bit like computer science. You can learn the theory from a book. Yet until you get your hands dirty and try to apply the principles you're learning, it's nothing but theory. I'm sure everyone else will have some good suggestions for books. My suggestion is to learn the basics in a classroom and practice them in a lab. Once you're there you'll find a wealth of interesting things to read. Get to the point where you know what you're doing, then start on your own projects. It's more fun to actually hack on the stuff than read about it.
You can also do this: <? foreach ($users as $user) {
include "templates/user/usertemplate.php"; } ?>
Then usertemplate.php contains <li><a href="user.php?userid=<?= $user->userid ?>"><?= $user->username ?></a> or <? echo "<li><a href="user.php?userid= $user->userid">$user->username</a>" ; ?>
The trick is if you tuck most (or all) of your html in the templates directory then you can have skinning. Just make multiple templates directories and keep track of which one you're pulling the content from. This forces you to split your html from your objects, and as a bonus you get more code reuse. Your object's html templates are neatly tucked away in their own directories.
RE: * Argument passing
Turn off register_globals and use $_REQUEST and the other superglobals to do what you need. Never trust user input, yadda yadda. This has been a weakness in the past, but now it's a bit harder to get burned. I shot myself in the foot a couple times and had to learn how to deal with this stuff. PHP is a newbie friendly language, but secure PHP takes some experience to get right.
RE: * MySQL integration
Agreed. About this time last year I finally rolled my own DB wrapper that does what I need. My gripe with most abstraction layers is that they may claim to be DB independant, but cater to the lowest common denominator: mysql. Sorry, but if I'm using a "real" database I'm going to break out the stored procedures, transactions and more. If I get to use stored procedures, then my overall approach is going to change enough to break the abstraction layer. Things may have improved, but the last time I looked at it I went with the db specific funtions. I'd like to see some improvement here.
More notes:
As far as the 'parse, parse, reparse and initialize' cycle, you can alleviate some of that with caching. I've rolled functions to do this by output buffering entire pages (or significant includes), placing them on disk or in the database and serving those to the users. It depends on how often you update your site, but for fairly static pages it works OK. You can also break out the Zend cache or other products if you want to 'do it right'.
I don't see a problem with three different ways to open a file. Each one has a use and a historical reason for existing. Each one also gets the job done for the general case. Yes the namespace is a bit cluttered but the docs are very good. It seems like a design goal for PHP has been to wrap every useful library they can. This brings in a bunch of the C style file operations. Then you get the design goal to make tools to build webpages. That gives you output buffering tricks and so on. Learning to deal with this is all a part of PHP.
Just because PHP makes it easy for a 'non-programmer' to submit a form to a database it doesn't mean that it is an easy language to use for large projects. Maintaining bad PHP is hell and refactoring can be problematic. However, I do think PHP is appropriate for portals, message boards, and online catalogs. You just need to take the right approach: Object orientation (or good procedural libraries), templates, php.ini tweaking, coding standards and so on. It's not the easiest language to scale up, but it can be done. The problem is that it is such an easy language to do litle things in, they screw up when they do big things with it. Just like Perl.
Most consumers dont even care if a company kills babies* so long as they get cheap gasoline (*i know of know such company).
What company? Do you have any sources?
Democracy, and a goverment that represents the best interests of the majority of its people is supposed to sovle this.
Very true. In fact, the lack of representation of the citizenry is what is causing the problem in the first place. Free market forces would probably be enough to promote both DRM and open hardware at the same time. Users who want to listen to $foo on their DRM Vaio have the option of buying the Sony. Those of us who want open hardware can buy something else, and not listen to $foo. I'd bet if Sony did make a DRM laptop and established a iSony service where you could listen to DRM Sony music, it might be a hit. OTOH, It might go the way of DiVX. I'd at least like to opportunity to choose.
Step 2. Beat the hell out of your inkjet while listening to gangsta rap.
Step 3. Find a decent used HP laserjet. Older 'office model' HPs are built like tanks. I've found a few with page counts into the 100-200 thousand range that still print fine. Look around and you can find refurbed IIs, IIIs, and 4Ps for about a hundred bucks. With a bit more effort you can pick up free IIs and IIIs from small offices cleaning their closets. They might need a fuser or rollers but the work is easy and the parts are usually cheap.
On a 4P (the personal sized version of the 4 series) the toner lasts about 4000 pages. At 20 pages a week you can get nearly four years out of a $70 toner cartrige. Since a lot of refurbs come with some toner, you might spend a hundred bucks for the printer and be printing for a couple of years.
I have karma to burn, so here goes. How does it feel to be so wrong? It is this very customization that has given life to the Linux GUI. Don't like a Windowsesque desktop? Try Enlightenment. Like a tighter look? Go fetch KDE. These choices empower Linux users.
Skinning is nothing more than graphical masturbation when it comes to improving the Linux GUI. Sure you can change the look of every widget, every color, every shape. Does it change the the fact that you're stuck with yet another implementation of the desktop metaphor?
You bring up a pet peeve of mine. Skins and themes only give the illusion of empowering users. Give a newbie a desktop with a bunch of themes, and they'll often have a blast cycling through them. Being able to change so much about their desktop environment gives them a sense of control over their computer. Unfortunately they still won't understand that you don't have to double click everything. Even though they know how to make the cursor look like a snake, they don't know any more about actually using the computer. It is still essentially the same UI.
An effective user interface is one that you don't notice. Take your average toaster. It has one lever that you push down to start tosting. It also has a single slider that you push sideways to determine how dark to toast the bread. You've got solid visual cues everywhere, all inviting you to use the thing. The slots are bread shaped. Pushing the lever down not only makes the bread fit completely in the slot, it turns the unit on. The slider is most likely color coded, one side light, the other side dark. The design of the toster makes an attempt to communicate how you use it. When you go to make toast you don't need think about how the toaster works.
I'd like to suggest that computers should operate in much the same way. The less the end user thinks about how the computer works, the greater the effort they can apply to the tasks they are using their computer for. Coming up with this design is going to take a new approach rather than a rehash of the desktop. By creating something greater than the desktop, we'll lure users away from that old 'desktop' OS. If the other OS companies do it first, then what happens? Much of the work put into KDE, Gnome, E, and all of your pretty skins become desktop era cruft in a 'post desktop' world.
See those slashboxes over there? I've got K5, Ars Forums, Brunching Shuttlecocks, E2 and O'Reilly. These are sites that I browse when I've got some free time and something intersting comes up. I know the url's, but I don't have them bookmarked because I get them here on slashdot.
Even the front page hits sites that I occasionally look at. Ny Times, New Scientist, Salon, and a few others. If I played "six degrees of slashdot", most of my favorite sites would only be one or two degrees away from here. Granted, slashdot is a link whore. However I still spend most of my 'non task oriented' browsing on this side of the web.
Just had a thought. Maybe these web aggregators/metabrowsers are missing the boat. I come to slashdot for the content, not the boxes. If I didn't check slashdot daily for the content I wouldn't even look at them. A business model based on screen scraping the web makes me feel like it's 1999 again. You can hardly make money serving up your own content, what makes you think you'll make the bucks with secondhand RDF feeds?
http://www.export911.com/convert/conFac-J.htm h ttp://www.export911.com/convert/conFac-J.htm
Some magic happens and those 2000 Calories give us 2000 odd Watt hours. Well, really 2324 watt hours. Life isn't always big round numbers.
Disclaimer: I'm not sure about the second conversion to watt-hours. I trusted the computer to do the right thing. Feel free to fix it if this all turned out wrong.
Our bogus assumptions lead us to the maximum output. What does our back of the envelope calculation really mean? Lets do some more bad math:
We'll call it 2400 total Watt hours You said 8 hours, so we divide by 8 Our man only really makes 300 Watts in an hour
300 Watts? Don't spend it all in one place. Here are some potential uses: A desktop computer without the monitor (maybe) Three, count them, three 100 watt light bulbs A small swamp cooler Probably a small TV
Throw in the bothersome laws of thermodynamics and you won't even get that. Lets put it this way, if it runs on Duracells, you could probably power it without killing yourself. Incidentially, that brings back to the topic of the article.
There is a reason China isn't exporting power. It isn't a lack of people or bicycles.
More ads = more network revenue = higher profits = higher stock price = larger CEO bonus = bigger yacht.
Always pick the option that always ends with the people in power getting a bigger yacht.
I agree with your points about the quantity of ads reaching the over-saturation point. The difficulty is in the implementation.
Lets say you allow one 30 second ad per commercial break. For the networks to make the same amount of money, they would need to charge about five times as much to show that ad. Some advertisers might balk at that. Lets say I've got a product with a wide demographic appeal. Every week I want to hit several market segments with an advertisement. To hit these targets I want to show an ad during the following shows:
Ricki Lake The Simpsons Friends Young and the Restless Bernie Mac
Do you think that showing only my ad during the 8:15 break on Friends will help my sales more than five ads a week? As an advertiser I'd want you to back up your claims before signing up for your plan.
As a network exec this plan screws up my schedule. I now need to fill an extra 6 minutes of each half hour. You could make shows longer to accommodate the plan. On the other hand, you could simply make commercials longer. In either case you are changing an accepted format. Expect to find resistance from both sides. Shows are longer, so distributors will start charging more. Ads are longer, so production costs will eat up more of the advertising budget. I don't see more money for me here. As it stands now I can speed up Will and Grace a tiny bit to wedge another ad in. More ads = bigger yacht.
With the threat of the skip, I see a few trends developing:
Irregular commercial lengths. Ads bloat to 35 seconds and try to deliver the entire message in the five seconds you do see.
Short 5-10 second network promos to shift the skips right into the meat of the ad.
A return to the old style of advertising, where the people on the show hawk the products.
Doubleplus product placement.
I hope these rent seeking corporations start getting shot down by our government for hire. I just don't see it happening. The guys with the big yachts will just keep passing the ball around while we sit as the monkey in the middle.
Imagine that you are sitting in a cube farm right now. Pop your head up and have a look around.
Yeah, isn't she cute. I knew you'd spot her first. She's the receptionist, but you couldn't tell she works here by the hours she puts in. Most of the time she is in a closed door meeting with the VP.
Ah, Bill, the VP. Isn't he a character. Always shifting those paradigms, building synergies. He's a 3 handicapper at the club. Goes every afternoon after twiddling the receptionist's switchboard.
At least your boss Shamir works his ass off. Always on the phone to Bangalore. The language is pretty opaque, but it sounds like he is haggling. You just wish he'd quit printing up org charts on the department printer.
Well, the team looks solid anyway. Jerry is the best coder you've ever met. This guy dreams in regular expressions and could probably vomit a virtual memory system. OK, so he's just supervising now. Someone needs to be responsible for the spec and overseeing the reports. He doesn't code much anymore, but he's so good that he's always correcting the lead programmer Mike.
Of course Mike doesn't code much either. He needs to fill out those damn reports. Plus he doesn't get along with Jerry. Mike keeps telling him to quit messing with the spec and to leave his code alone. Jerry just blames Marketing, who blames the Focus Group (that was requested by the Customer) and THE CUSTOMER IS ALWAYS RIGHT. With Jerry tied up, Mike also needs to make sure the "Gang of Four" are working hard. After all, this is the company's main product we're working on. Someone needs to write it.
Oh wow! Did you say you've got the Gang of Four working with you? No, not quite. Someone decided to hire a team of recent grads from Cal Poly. They'd all worked on the same senior project, and one of them couldn't shut up about Design Patterns, so the name just stuck. When they aren't talking about their rice racers they can pound out a few lines. On the other hand, just by listening to them chatter, you can rebuild a Civic SI in your sleep.
Now it's down to just you and me, and we're both reading Slashdot. I wonder if I can convice the brass to start giving me put options...
Every game company has one common goal: to make as much money as possible. The responsibility of the game designer to create a product that meets this goal. Period. If you could get a million people to pay 50 bucks for an empty cardboard box, and have them feel good about it, you too could be a game designer.
With the traditional retail business model, a game makes a lot of money if it sells a lot of copies. Holding production costs down helps, but nothing boosts the bottom line like a bestseller. So as a game designer your next question needs to be, "How can I make a game that sells well?"
Glad you asked. First of all, you need to do some market research. What type of games are people buying? What are the trends in electronic entertainment? Is there a genre that is hot? Are some genres pretty much dead, like side scrolling platform games? You'll need to get a feel for the market as a whole. Fortunately, you usually have some help.
In fact, a lot of times this step will happen before you ever get involved. When the executive producers (the guys with the money) tell you about your next project, they might phrase it something like this: "Our next game MUST be an isomorphic 3D massively multiplayer real time fantasy roleplaying driving game in an immersive universe with both a movie AND a soft drink tie in." When you hear that, you know they've been banging the chick in marketing. Refuse to listen at your own peril.
Where are we? Oh, still trying to make our game sell. Did you catch the movie tie in above? That helps. So does making a sequel to a smash hit. Sports games do well too, but the genre gets pretty crowded. Familiar characters, like Mario or Sonic, also work well. When people are standing in the rack of games at the local CompUSA, they are looking for something familiar. It is all about branding.
With branding you have two options: license one or roll your own. Lets say that you are making a board game based on arranging rows and columns of letters to make words. Will your game sell better under the Scrabble brand name, or as 'Genericabble, the word game made by that guy who used to be a coder'. Scrabble will crush your sorry ass. Rolling your own isn't really an option in certain niches.
Here is another example: You have the choice between two basketball games. One is officially licensed by the NBA. You have Shaq and Kobe playing on the Lakers. The other isn't licensed at all, but it has Shack and K. Brian playing on the Lackers. Which one do you percieve to be higher quality? Which one would you be proud to play with your friends? Which one would you buy? Chances are that you'd only buy PoserNBA 2002 if it cost MUCH LESS than RealNBA 2002.
On the other hand, if you have a new spin on a market proven idea, you can try establishing it as its own brand. Good luck. It will take more work and more money (advertising, bought game reviews, free demos) than you realize. Try to score with the girl in marketing. It will make the long nights that you spend on that side of the building worthwhile.
We're in eight paragraphs deep, and we still haven't covered the number one reason most people want to be game designers:
"I've got this great idea for a video game and I think it will be a lot of fun!"
Take a number and have a seat on the bench over there. Yes, next to the homless guy. Yes, his number is 22 lower than yours. Yes, he's got seven more years of programming experience. Yes, he also has a Phd in physics. No, he's not here for the game designer job. He wants an entry level position in QA/testing.
So how do you get to skip the corporate ladder and go straight in as a game designer? Make a game to get your foot in the door. I know you don't have the time. I know you have a family. Big dreams require some sacrifice.
First create a demo.
Your demo needs to demonstrate the following:
* You understand the market.
* You can work with a team of underpaid people and a deadline, and still deliver a product.
* You can take a concept and mangle it to make it sell better.
* You can actually deliver a product. Not just the code, but the branding, the box, the website, the manual, advertisements, everything.
* You can do all of the above and still make a fun game.
Why did I wait until way the hell down here to mention making a fun game? Because it is the most imporant part (unless you already have Star Wars, Duke Nukem, or Harry Potter lined up). Your game needs to be fun for it to sell well. The challenge is that you must do it within the context of ALL of that marketing BS above.
Designing a game is much more than just coding. I emphasized some of the marketing skills that you need to prove a point. To be truly successful in an interdiciplinary field like game design you need to be well rounded. Knowing how to manage and motivate people helps a lot. You need to be a project manager, able to control the creation of software. Finally, you need to know how to build something fun. That is the most elusive part of all. I believe it is a true talent, and if you have it, then you only need to broaden your skillset beyond just coding. Prove that you can make fun, and prove that you can manage a project designed for the mass market, and you will be well on your way.
hell add IM program like gaim or kopete in there and they may not even remember to exit the install
Now that isnt a bad idea. If you had some corporate backing, or some dedicated volunteers, you could have an install-im with a live person at the other end. That way, if you needed any help you could chat with a helpful install buddy. Tell me that wouldnt impress reviewers.
Of course, most of my early problems were getting a damn PPP connection up...
Freeboxen started as a small project, my first stab at putting together a website. I'd written a PHP framework for posting things in a directory structure and what not and figured that I could do something good with it. With a bit more tweaking, Freeboxen was born.
Like most geeks, I had more hardware than I could ever use. Much of it was crap, but there was still some decent, usable kit around. My basic concept was based around a "Pay it Forward" mentality. Do something good for someone else. Even if it means just giving them your leftovers, go and do it. If something comes around that you want, great. If you can inspire someone else to give away something, even better.
I'd never written a real web app before. I was new to PHP, new to MySQL, and new to the web. Freeboxen showed this to the core. I got burned by the.inc problem. Formatting was done with a font tag frenzy and nested tables aplenty. Hell, I even threw in a little morse code in white on white just to have a little fun. I was learning how to use the medium, write the code, and build the database. The site sucked in Lynx. Hell, the site sucked in any browser. Freeboxen was always more about the idea than the implementation.
I added a few features over the four months that Freeboxen was under active development. A karma system was a brief experiment gone awry. I'd written about half of a "free auction" system that was dropped. Any time I changed the giveaway process to try and make it "more fair" for the givers, people gave less. The only real positive addition was the forum section.
The first few months of Freeboxen went pretty slowly. About one in twenty visitors (who came in at a trickle) posted something. I gave away all of my old stuff to get started. An occasional mention on a weblog would get things going, but then it would die out again. After a horrific banner exchange experience I tried to buy some advertising. I ran the numbers and realized that it would cost almost ten bucks to find each new poster. At that rate I could pay people to donate stuff. Unfortunately the VC's wouldn't go for it:)
Sometime in the summer I put Freeboxen in "Fire and Forget" mode. I'd poke around every few days to make sure the site was up and that was it. Not much was going on, a handful of giveaways a week and an occasional forum post. It seemed like there was a core group of die-hards and the flurry of lookie loos. The site just couldn't get to critical mass.
I wound up taking a new job that gobbled up most of my time. Freeboxen became more and more neglected as time went on. At best I only checked it once a week. When my schedule let up a bit I planned on starting a rewrite and getting things back in order. I'd learned quite a bit about PHP and web development and I wanted to fix some of the tragedies that I'd done in the past. I posted a little "I haven't forgotten you" message to the die hards and started thinking about the redesign. And so the fall of Freeboxen began.
A few days later I got up earlier than usual and checked the site. This was probably the first time I'd done a mid-week check in a month. Sure enough- Slashdotted. What I had hoped for months ago inspired nothing but dread. With a surge of adrenaline (funny how a website can promote the fight or flight mechanism) I tried to make sure that everything was OK. I scanned through the comments, most of them looked decent. The site was still up and there was a flood of new posts. I went to work.
When I checked the site at ten, it had rolled over and exposed its soft bits. I'd hoped that I could fix it in time, but posts were popping up about the vulnerable include file. Rookie mistake, I know. All of the newer parts of the site were using safe, parsed, include files. Live and learn. Fix and move on.
Now to the real meat. The death of Freeboxen.
What Slashdot had begun, my web-host ended. I was paying $15 bucks a month to host Freeboxen on a shared server. The hosting policies were very liberal, and specifically stated that there weren't any extra bandwidth charges. About six weeks after the slashdotting I found a charge for several hundred dollars from my web host. No formal bill. I won't get into the details here. Lets just say that I'm disappointed.
Even after factoring in the pittance that showing banners brought in, I was still way in the hole. The codebase was screwed, my web-host was screwing me, and I didn't have time to screw around. I pulled the plug. A few people offered to take the site off of my hands. My one attempt at giving it away fell through. Freeboxen died.
I have half a mind to rewrite the blasted thing and start her up again. Do it right for once. Bare bones and simple. No complicated claims process. No big forum. Just free hardware and a decent search, plain and simple. Open source. How it should have been all along.
James Lincoln
Oh, and I will send that C64 you claimed... It's just that it has some sentimental value now.
y coputer i in the kitchen, in the little "eating nook". It a bit unconventional but the fridge i at arm length. The only downide i that oetime thing can go wrong.
A couple week ago I duped about 20 ounce of ice water into the keyboard. Buer. I anaged to hut the PC down and unplug the keyboard. Then I duped all of the water out (or o I had thought). Four hour later water cae guhing out of the corner when I picked it up. At that point I figured I had nothing to lose and tarted prying keycap. Every bit of lint and cruft had congealed into ytery pudding under the keycap. Diguted, I pried off every cap and took the thing into the hower. Five inute with the aage nozzle and it wa factory freh again.
Then I diaebled it to dry and tuck it in front of the fan overnight. Everything work great and I havent had a proble ince. In fact Im uing it right now. -BW
Hell, this is a great idea. Kinda similar to the 'ractives' described in Stephenson's "The Diamond Age". Of course certain plotlines will work out better than others. The old "Murder on a Train" scenario seems ideal. Throw a bunch of people on a train. A NPC gets killed. Sometimes by an NPC, sometimes by a real person (to prevent Turing test detectives). Everyone tries to find the killer.
Technical challenges aside it should be fairly possible. Limited sets, data/character driven plotline. Very free form. Talk to people. Explore. Point fingers. Done. Sure it's cliched, but it would probably be one of the easiest plots to do.
Any of the old Sierra games could probably be recast in this format. No need for a human DM, just people who can stay in character and proceed towards a goal. Half the fun is getting there, and each game could be somewhat different. With the right mix of people the plot would become secondary. Could you imagine the Star Wars plot acted improv style by the cast of "Whose Line is it Anyway?"
Granted, the medium for this sort of experience doesn't quite exist. You would almost need a "stage" that could intepret your movements into 3D animation in real time. Throw in some VR goggles so you could see the action. Add a teleprompter in there to feed you some lines if you want help. Someday it will all come together, but not for a few years yet. I'm looking forward to it.
Sorry, but I have to disagree. The knives eventually dulled with use but, the flow of glass is a myth. Uncle Al from sci.[chem|physics] says it better than I ever could:
>glass is a liquid which flows over > centuries rather than minutes.
[snip]
1) Obsidian knives in Egyptian tombs are still razor sharp. Is 5000 years in desert heat longer than "centuries?" And with a tight radius of curvature at the start, too.
2) Obsidian cliffs are still up there, under lots of pressure, for some millions of years. Where's the ooze?
3) But wait! The foregoing is all bullshit because it happens over such large unobserved periods of time! No problem. Take some sodalime glass, heat it with a propane torch to soften, stress it but don't anneal. When returned to room temp, place between crossed polarizers. You can now QUANTITATIVELY measure the internal strain by the birefringence evidenced by the colored lines. Take a picture - it's hundreds of psi. Put it on your keychain for safe keeping, wait a year, take another photo of the birefringence. No change, bozo. And that is a lot smaller than flow. Say it softly... TEMPERED GLASS. So sad.
4) Glass fiberoptic strands don't deform over decades. Their exquisite sensitivity to geometry, flaws, and stress birefringence is real time up your nose.
(Posted by Uncle Al in alt.sci.physics.new-theories on 01/22/2000)
Ive made glass knives for ultramicrotomy before. We used them to section samples for a transmission electron microscope. Although they dont have a single atom edge they are super sharp and easy to make. I havent done this in years so all of this is being pulled out of the haze. If you know what I am trying to say, please jump right in and flesh out the details.
Basically we took a small rectangle of quarter inch thick plate glass and scored it diagonally with a diamond cutter. Then we broke along the score and examined the sharpest edge under a low power microscope. To check the quality ISTR looking for some sort of visual effect caused by diffraction or interference. Of course we also made sure it had a nice straight, even blade. It took a few tries to get a good blade, but man was it ever sharp. These things would shave microns off of a hard plastic sample.
I dont know about making weapons out of these knives though. You might be able to fashion a decent spear head, but that is about it.
It looks like it might just be a matter of time before the DMCA takes full effect. If the protests fail, and the courts rule in favor of the corporations, we still have a response. Lets simply ignore the monolithic, monopolistic, pay-per-use culture and come up with something better. How about creting an information/media refuge by creatively applying shrinkwrap style licensing?
In the software world, the GPL is an effective response to overly restrictive End-User License Agreements. Some of the best software in the world has been released under the GPL. The author chooses to use that license, and their works are protected under it. On this side of the fence, everything is working pretty well.
Wouldnt it be possible to release other media under a license that is more permissive than the DMCA tainted Copyright? Draw up a new contract that preserves the rights of the artist to profit, and protects the consumers rights to fair use. Include a provision that makes peer-to-peer distribution possible under certain, well defined conditions (payment for example). Make it easy for the end users to be legit, and stay legit.
Recruit artists who are benevolent and informed to start publishing under this license. Show them the benefits to their fans. Demonstrate that it wont cause a loss in revenue. This might take awhile (and some legal precedent), but it could be fairly feasable.
Push the benefits of this style of licensing to the consumer. Put little stickers on all permissively licensed merchandise, so people know when their rights are protected. Show them the benefits of the new licensing, highlighting the added value of having more rights to use the content at their convenience. Maybe even rally around someone who gets busted for doing something innocent under the DMCA copyright (linux DVD anyone?) to have a poster child for the cause. If we could get some consumer demand, then we have more pressure on the artists to release material under the new license.
So how about it? Can we take our ball and go home? -BW
This used to impress the hell out of me. Then I realized how they can appear to deliver perfect OCR:
You don't know what you're missing.
If the OCR fails, you don't get the hit. So long as you never see any false positives, the OCR appears to be batting 1000. In reality there might be a few catalogs that it misses because the OCR didn't work. You just never know.
Compare this to OCRing a document. Every error stands out.
Don't get me wrong, I'm still impressed by Google. They are just solving the 'easier' side of the problem.
Just be careful when you teach them factorials...
HA! You think you have it hard? I don't even have copper wire! Try breaking into a NOC and reading slashdot straight from the fiber with your remaining eye!
The only way to move Governor Davis to action is with a bribe^H contribution. His signature probably costs a bit more than a toner cartridge, but not much. Check out egray.org to see what the going rate is.
Most junk faxers are small businesses who contract through a faxing service. The faxing service uses special fax servers to send, so the old black construction paper trick won't help. At best you tie up a channel on their PRI.
Others have mentioned that you can use various laws, including the TCPA to go after the small businesses. You may also try contacting the major mass-fax houses. Ask to be added to any dontfax list they have. From what I recall the TCPA does not require the mass fax houses themselves maintain a list. You may try to get around this by asking to be added to the dont send list of all their clients. At the very least it would be a headache for them and some documentation if you ever wanted to sue. It's a longshot, but you never know.
why not PHP?
because PHP tends mixes content / presentation and control
It's the programmers that tend to mix the layers, not the language itself. You might think PHP's ability to mix logic and presentation is a fault. I disagree. Let's take a look at some of the things that Larry said about Perl, and apply them to PHP:
As for Perl, it has never been "structured" in that sense, though it has always been structured in the sense that you can create as much structure as you like. The whole point is that the structure is optional, not imposed externally.
This describes the PHP situation fairly accurately. As the programmer, you get to determine the level of structure. This week I've worked on two applications in PHP. One of them is a very unstructured little script so that my brother can get my dynamic IP address. The other is an OO content management system that uses templates for everything. If I had to use highly structured techniques for the first script, it would have been too much of a hassle to bother. If I'd written the second application in unstructured blender mode, I might as well not have bothered.
Now I'm not going to say that I haven't written big projects in an unstructured manner. I've also over-structured small projects. When you wield flexibility, sometimes the gun gets pointed at your foot.
Back to Larry:
You have to have discipline to do programming in the large, but you'll choose the discipline by turning up the big discipline knob yourself, not by having someone else turn it up for you.
This is a philosophical decision, but it's one that I tend to agree with. Having the structures available lets you work on large projects. Not forcing you to use them lets you scratch the little itches. There is a ton of bad PHP out there, but that is the programmer's fault, not the language's.
Canned air (cleaning, and if you turn it upside down you can use it as freeze spray and isolate components that are having heat-related failures)
You've got some good stuff in your kit, but this one scares me. A nice thick layer of frost on your electronics is a great way to release the magic smoke. Plus I can't imagine the thermal shock is good for your components.
I can't say that I've seen too many heat related failures on stock hardware. Overclocked stuff, sure, but not your typical business computer. The few times I have, it's always been pretty obvious. Dead fans, computer buried under stuff, dead AC in the server room, that kind of thing. Certainly nothing I'd hit with a refrigerant just to see if it made a difference. Of course, I've also never gotten a paying gig to put togeter a water cooler or a fanbus. Maybe you're just having more fun.
I'd add a mirror or two to the kit. Maybe some duct tape. A punchdown tool for doing phone wiring is also handy (if you ever get stuck doing that sort of thing). One of my favorite tools was a nice hand cart. Nothing like moving five systems without much effort. On the softer side, a blank floppy, a couple of CD-R's and maybe a USB keychain drive might be useful. Sometimes you can't get the NIC working without sneakernetting something over. A good pocketknife can also be useful for quick jobs and cuts that you cant make with snips. Throw in some cables, adaptors, gender changers and you'd have a pretty solid kit.
Compared to auot mechanics, IT guys get off pretty easy. A hundred bucks of tools is almost overkill for a PC. That wont even get the sparkplugs changed on some cars. Experience will tell you what you need, what to buy, what to improvise and what you can't live without.
I'd recommend taking an intro chem class at a local junior college. Around here that costs less than a hundred bucks, plus the cost of books. This is important, because you need to learn basic skills that you don't get from reading more advanced (interesting) texts. Things like balancing chemical equations and stoichiometry are foundational and should not be glossed over. You'll also get a nice survey of the different parts of the field.
Taking a class also has another important benefit: access to a lab. Don't discount the value of hands on experience. Chemistry is a lab science and you should spend some time doing wet chemistry. Since most chemistry is too expensive to do at home (a poorly equipped home lab can cost thousands), this is a good cheap way to do it.
Next off, I'd recommend the Chemical Demonstrations series by Bassam Shakhashiri. I can only find the first one at amazon, but I think there are at least four. Most of the reactions that he gives are pretty entertaining and provide interesting ways to learn the concepts. If you can get the chance to do a few of the demos, go for it.
If you're still interested, I'd recommend taking an intro organic class, and whatever analytical chem you can find. The labs that go along with these classes are a blast and the content is more than worthwhile. At the JC level you've probably only blown a few hundred dollars on classes and books, and earned it all back in the time spend doing labs.
Once you've got the concepts down, the newsgroup sci.chem is pretty entertaining. Uncle Al is a kook who seems to a little about every facet of the field. At the very least, you'll get an idea of the real world problems that non academic lab chemists are working on.
By now you'll have found part of the field you enjoy. I liked analytical chem and spectrophotometry. Mainly because you can hack on equipment as well as chemicals. Try building some of your own lab equipment. Making a good balance is a challenge, building a homebrew spectrophotometer is a bit tougher. The amount you can learn from these projects is priceless. If that isn't your cup of tea, try doing simple chemical analysis around your home. pH is pretty easy to work with on a small scale, chlorine in the water might also be doable. Electroplating can also be fun. You'll need to buy some equipment, reagents and standards. Chemists have an old joke about analysis: You can have it cheap, fast and accurate. Pick any two. For messing around at home, start with cheap and prioritize the rest. Look for shortcuts and see how these shortcuts effect the outcome of you're experiment. The fun comes with the process, not the results.
At home I'd stay away from toxics and large quantities of flammable or corrosive materials. If you can't put it down the drain with copious amounts of water, chances are you don't want large quantities of it around. Strong acids and bases demand some respect, particularly HNO3. I got a nasty nitric acid burn in college and my skin was yellow and crusty for weeks. Nitric acid also produces 'smog' in many of it's reactions so ventilation is required. You'll learn the saftey stuff in class. Follow it wherever you are. I've worked in plating shops where acids where stored next to cyanide salts. Not good. Learn how not to kill yourself before working with anything that can kill you.
Chemistry is a bit like computer science. You can learn the theory from a book. Yet until you get your hands dirty and try to apply the principles you're learning, it's nothing but theory. I'm sure everyone else will have some good suggestions for books. My suggestion is to learn the basics in a classroom and practice them in a lab. Once you're there you'll find a wealth of interesting things to read. Get to the point where you know what you're doing, then start on your own projects. It's more fun to actually hack on the stuff than read about it.
RE: * HTML embedding
You can also do this:
<? foreach ($users as $user)
{
include "templates/user/usertemplate.php";
}
?>
Then usertemplate.php contains
<li><a href="user.php?userid=<?= $user->userid ?>"><?= $user->username ?></a>
or
<? echo "<li><a href="user.php?userid= $user->userid">$user->username</a>" ; ?>
The trick is if you tuck most (or all) of your html in the templates directory then you can have skinning. Just make multiple templates directories and keep track of which one you're pulling the content from. This forces you to split your html from your objects, and as a bonus you get more code reuse. Your object's html templates are neatly tucked away in their own directories.
RE: * Argument passing
Turn off register_globals and use $_REQUEST and the other superglobals to do what you need. Never trust user input, yadda yadda. This has been a weakness in the past, but now it's a bit harder to get burned. I shot myself in the foot a couple times and had to learn how to deal with this stuff. PHP is a newbie friendly language, but secure PHP takes some experience to get right.
RE: * MySQL integration
Agreed. About this time last year I finally rolled my own DB wrapper that does what I need. My gripe with most abstraction layers is that they may claim to be DB independant, but cater to the lowest common denominator: mysql. Sorry, but if I'm using a "real" database I'm going to break out the stored procedures, transactions and more. If I get to use stored procedures, then my overall approach is going to change enough to break the abstraction layer. Things may have improved, but the last time I looked at it I went with the db specific funtions. I'd like to see some improvement here.
More notes:
As far as the 'parse, parse, reparse and initialize' cycle, you can alleviate some of that with caching. I've rolled functions to do this by output buffering entire pages (or significant includes), placing them on disk or in the database and serving those to the users. It depends on how often you update your site, but for fairly static pages it works OK. You can also break out the Zend cache or other products if you want to 'do it right'.
I don't see a problem with three different ways to open a file. Each one has a use and a historical reason for existing. Each one also gets the job done for the general case. Yes the namespace is a bit cluttered but the docs are very good. It seems like a design goal for PHP has been to wrap every useful library they can. This brings in a bunch of the C style file operations. Then you get the design goal to make tools to build webpages. That gives you output buffering tricks and so on. Learning to deal with this is all a part of PHP.
Just because PHP makes it easy for a 'non-programmer' to submit a form to a database it doesn't mean that it is an easy language to use for large projects. Maintaining bad PHP is hell and refactoring can be problematic. However, I do think PHP is appropriate for portals, message boards, and online catalogs. You just need to take the right approach: Object orientation (or good procedural libraries), templates, php.ini tweaking, coding standards and so on. It's not the easiest language to scale up, but it can be done. The problem is that it is such an easy language to do litle things in, they screw up when they do big things with it. Just like Perl.
Most consumers dont even care if a company kills babies* so long as they get cheap gasoline (*i know of know such company).
What company? Do you have any sources?
Democracy, and a goverment that represents the best interests of the majority of its people is supposed to sovle this.
Very true. In fact, the lack of representation of the citizenry is what is causing the problem in the first place. Free market forces would probably be enough to promote both DRM and open hardware at the same time. Users who want to listen to $foo on their DRM Vaio have the option of buying the Sony. Those of us who want open hardware can buy something else, and not listen to $foo. I'd bet if Sony did make a DRM laptop and established a iSony service where you could listen to DRM Sony music, it might be a hit. OTOH, It might go the way of DiVX. I'd at least like to opportunity to choose.
Step 1. Rent Office Space.
Step 2. Beat the hell out of your inkjet while listening to gangsta rap.
Step 3. Find a decent used HP laserjet. Older 'office model' HPs are built like tanks. I've found a few with page counts into the 100-200 thousand range that still print fine. Look around and you can find refurbed IIs, IIIs, and 4Ps for about a hundred bucks. With a bit more effort you can pick up free IIs and IIIs from small offices cleaning their closets. They might need a fuser or rollers but the work is easy and the parts are usually cheap.
On a 4P (the personal sized version of the 4 series) the toner lasts about 4000 pages. At 20 pages a week you can get nearly four years out of a $70 toner cartrige. Since a lot of refurbs come with some toner, you might spend a hundred bucks for the printer and be printing for a couple of years.
Now that is a reduced TCO...
I have karma to burn, so here goes. How does it feel to be so wrong? It is this very customization that has given life to the Linux GUI. Don't like a Windowsesque desktop? Try Enlightenment. Like a tighter look? Go fetch KDE. These choices empower Linux users.
Skinning is nothing more than graphical masturbation when it comes to improving the Linux GUI. Sure you can change the look of every widget, every color, every shape. Does it change the the fact that you're stuck with yet another implementation of the desktop metaphor?
You bring up a pet peeve of mine. Skins and themes only give the illusion of empowering users. Give a newbie a desktop with a bunch of themes, and they'll often have a blast cycling through them. Being able to change so much about their desktop environment gives them a sense of control over their computer. Unfortunately they still won't understand that you don't have to double click everything. Even though they know how to make the cursor look like a snake, they don't know any more about actually using the computer. It is still essentially the same UI.
An effective user interface is one that you don't notice. Take your average toaster. It has one lever that you push down to start tosting. It also has a single slider that you push sideways to determine how dark to toast the bread. You've got solid visual cues everywhere, all inviting you to use the thing. The slots are bread shaped. Pushing the lever down not only makes the bread fit completely in the slot, it turns the unit on. The slider is most likely color coded, one side light, the other side dark. The design of the toster makes an attempt to communicate how you use it. When you go to make toast you don't need think about how the toaster works.
I'd like to suggest that computers should operate in much the same way. The less the end user thinks about how the computer works, the greater the effort they can apply to the tasks they are using their computer for. Coming up with this design is going to take a new approach rather than a rehash of the desktop. By creating something greater than the desktop, we'll lure users away from that old 'desktop' OS. If the other OS companies do it first, then what happens? Much of the work put into KDE, Gnome, E, and all of your pretty skins become desktop era cruft in a 'post desktop' world.
See those slashboxes over there? I've got K5, Ars Forums, Brunching Shuttlecocks, E2 and O'Reilly. These are sites that I browse when I've got some free time and something intersting comes up. I know the url's, but I don't have them bookmarked because I get them here on slashdot.
Even the front page hits sites that I occasionally look at. Ny Times, New Scientist, Salon, and a few others. If I played "six degrees of slashdot", most of my favorite sites would only be one or two degrees away from here. Granted, slashdot is a link whore. However I still spend most of my 'non task oriented' browsing on this side of the web.
Just had a thought. Maybe these web aggregators/metabrowsers are missing the boat. I come to slashdot for the content, not the boxes. If I didn't check slashdot daily for the content I wouldn't even look at them. A business model based on screen scraping the web makes me feel like it's 1999 again. You can hardly make money serving up your own content, what makes you think you'll make the bucks with secondhand RDF feeds?
I'm too tired to do this longhand, but here is a rough upper bound:
h ttp://www.export911.com/convert/conFac-J.htm
Our assumptions:
2000 Calorie diet
Every Calorie is converted to electrical energy at 100% efficiency
2000 Calories = 2000000 calories (we eat kilocalories)
Play with conversions here:
http://www.export911.com/convert/conFac-J.htm
Some magic happens and those 2000 Calories give us 2000 odd Watt hours. Well, really 2324 watt hours. Life isn't always big round numbers.
Disclaimer: I'm not sure about the second conversion to watt-hours. I trusted the computer to do the right thing. Feel free to fix it if this all turned out wrong.
Our bogus assumptions lead us to the maximum output. What does our back of the envelope calculation really mean? Lets do some more bad math:
We'll call it 2400 total Watt hours
You said 8 hours, so we divide by 8
Our man only really makes 300 Watts in an hour
300 Watts? Don't spend it all in one place. Here are some potential uses:
A desktop computer without the monitor (maybe)
Three, count them, three 100 watt light bulbs
A small swamp cooler
Probably a small TV
Throw in the bothersome laws of thermodynamics and you won't even get that. Lets put it this way, if it runs on Duracells, you could probably power it without killing yourself. Incidentially, that brings back to the topic of the article.
There is a reason China isn't exporting power. It isn't a lack of people or bicycles.
More ads = more network revenue = higher profits = higher stock price = larger CEO bonus = bigger yacht.
Always pick the option that always ends with the people in power getting a bigger yacht.
I agree with your points about the quantity of ads reaching the over-saturation point. The difficulty is in the implementation.
Lets say you allow one 30 second ad per commercial break. For the networks to make the same amount of money, they would need to charge about five times as much to show that ad. Some advertisers might balk at that. Lets say I've got a product with a wide demographic appeal. Every week I want to hit several market segments with an advertisement. To hit these targets I want to show an ad during the following shows:
Ricki Lake
The Simpsons
Friends
Young and the Restless
Bernie Mac
Do you think that showing only my ad during the 8:15 break on Friends will help my sales more than five ads a week? As an advertiser I'd want you to back up your claims before signing up for your plan.
As a network exec this plan screws up my schedule. I now need to fill an extra 6 minutes of each half hour. You could make shows longer to accommodate the plan. On the other hand, you could simply make commercials longer. In either case you are changing an accepted format. Expect to find resistance from both sides. Shows are longer, so distributors will start charging more. Ads are longer, so production costs will eat up more of the advertising budget. I don't see more money for me here. As it stands now I can speed up Will and Grace a tiny bit to wedge another ad in. More ads = bigger yacht.
With the threat of the skip, I see a few trends developing:
Irregular commercial lengths. Ads bloat to 35 seconds and try to deliver the entire message in the five seconds you do see.
Short 5-10 second network promos to shift the skips right into the meat of the ad.
A return to the old style of advertising, where the people on the show hawk the products.
Doubleplus product placement.
I hope these rent seeking corporations start getting shot down by our government for hire. I just don't see it happening. The guys with the big yachts will just keep passing the ball around while we sit as the monkey in the middle.
Imagine that you are sitting in a cube farm right now. Pop your head up and have a look around.
Yeah, isn't she cute. I knew you'd spot her first. She's the receptionist, but you couldn't tell she works here by the hours she puts in. Most of the time she is in a closed door meeting with the VP.
Ah, Bill, the VP. Isn't he a character. Always shifting those paradigms, building synergies. He's a 3 handicapper at the club. Goes every afternoon after twiddling the receptionist's switchboard.
At least your boss Shamir works his ass off. Always on the phone to Bangalore. The language is pretty opaque, but it sounds like he is haggling. You just wish he'd quit printing up org charts on the department printer.
Well, the team looks solid anyway. Jerry is the best coder you've ever met. This guy dreams in regular expressions and could probably vomit a virtual memory system. OK, so he's just supervising now. Someone needs to be responsible for the spec and overseeing the reports. He doesn't code much anymore, but he's so good that he's always correcting the lead programmer Mike.
Of course Mike doesn't code much either. He needs to fill out those damn reports. Plus he doesn't get along with Jerry. Mike keeps telling him to quit messing with the spec and to leave his code alone. Jerry just blames Marketing, who blames the Focus Group (that was requested by the Customer) and THE CUSTOMER IS ALWAYS RIGHT. With Jerry tied up, Mike also needs to make sure the "Gang of Four" are working hard. After all, this is the company's main product we're working on. Someone needs to write it.
Oh wow! Did you say you've got the Gang of Four working with you? No, not quite. Someone decided to hire a team of recent grads from Cal Poly. They'd all worked on the same senior project, and one of them couldn't shut up about Design Patterns, so the name just stuck. When they aren't talking about their rice racers they can pound out a few lines. On the other hand, just by listening to them chatter, you can rebuild a Civic SI in your sleep.
Now it's down to just you and me, and we're both reading Slashdot. I wonder if I can convice the brass to start giving me put options...
-BW
Every game company has one common goal: to make as much money as possible. The responsibility of the game designer to create a product that meets this goal. Period. If you could get a million people to pay 50 bucks for an empty cardboard box, and have them feel good about it, you too could be a game designer.
With the traditional retail business model, a game makes a lot of money if it sells a lot of copies. Holding production costs down helps, but nothing boosts the bottom line like a bestseller. So as a game designer your next question needs to be, "How can I make a game that sells well?"
Glad you asked. First of all, you need to do some market research. What type of games are people buying? What are the trends in electronic entertainment? Is there a genre that is hot? Are some genres pretty much dead, like side scrolling platform games? You'll need to get a feel for the market as a whole. Fortunately, you usually have some help.
In fact, a lot of times this step will happen before you ever get involved. When the executive producers (the guys with the money) tell you about your next project, they might phrase it something like this: "Our next game MUST be an isomorphic 3D massively multiplayer real time fantasy roleplaying driving game in an immersive universe with both a movie AND a soft drink tie in." When you hear that, you know they've been banging the chick in marketing. Refuse to listen at your own peril.
Where are we? Oh, still trying to make our game sell. Did you catch the movie tie in above? That helps. So does making a sequel to a smash hit. Sports games do well too, but the genre gets pretty crowded. Familiar characters, like Mario or Sonic, also work well. When people are standing in the rack of games at the local CompUSA, they are looking for something familiar. It is all about branding.
With branding you have two options: license one or roll your own. Lets say that you are making a board game based on arranging rows and columns of letters to make words. Will your game sell better under the Scrabble brand name, or as 'Genericabble, the word game made by that guy who used to be a coder'. Scrabble will crush your sorry ass. Rolling your own isn't really an option in certain niches.
Here is another example: You have the choice between two basketball games. One is officially licensed by the NBA. You have Shaq and Kobe playing on the Lakers. The other isn't licensed at all, but it has Shack and K. Brian playing on the Lackers. Which one do you percieve to be higher quality? Which one would you be proud to play with your friends? Which one would you buy? Chances are that you'd only buy PoserNBA 2002 if it cost MUCH LESS than RealNBA 2002.
On the other hand, if you have a new spin on a market proven idea, you can try establishing it as its own brand. Good luck. It will take more work and more money (advertising, bought game reviews, free demos) than you realize. Try to score with the girl in marketing. It will make the long nights that you spend on that side of the building worthwhile.
We're in eight paragraphs deep, and we still haven't covered the number one reason most people want to be game designers:
"I've got this great idea for a video game and I think it will be a lot of fun!"
Take a number and have a seat on the bench over there. Yes, next to the homless guy. Yes, his number is 22 lower than yours. Yes, he's got seven more years of programming experience. Yes, he also has a Phd in physics. No, he's not here for the game designer job. He wants an entry level position in QA/testing.
So how do you get to skip the corporate ladder and go straight in as a game designer? Make a game to get your foot in the door. I know you don't have the time. I know you have a family. Big dreams require some sacrifice.
First create a demo.
Your demo needs to demonstrate the following:
* You understand the market.
* You can work with a team of underpaid people and a deadline, and still deliver a product.
* You can take a concept and mangle it to make it sell better.
* You can actually deliver a product. Not just the code, but the branding, the box, the website, the manual, advertisements, everything.
* You can do all of the above and still make a fun game.
Why did I wait until way the hell down here to mention making a fun game? Because it is the most imporant part (unless you already have Star Wars, Duke Nukem, or Harry Potter lined up). Your game needs to be fun for it to sell well. The challenge is that you must do it within the context of ALL of that marketing BS above.
Designing a game is much more than just coding. I emphasized some of the marketing skills that you need to prove a point. To be truly successful in an interdiciplinary field like game design you need to be well rounded. Knowing how to manage and motivate people helps a lot. You need to be a project manager, able to control the creation of software. Finally, you need to know how to build something fun. That is the most elusive part of all. I believe it is a true talent, and if you have it, then you only need to broaden your skillset beyond just coding. Prove that you can make fun, and prove that you can manage a project designed for the mass market, and you will be well on your way.
hell add IM program like gaim or kopete in there and they may not even remember to exit the install
Now that isnt a bad idea. If you had some corporate backing, or some dedicated volunteers, you could have an install-im with a live person at the other end. That way, if you needed any help you could chat with a helpful install buddy. Tell me that wouldnt impress reviewers.
Of course, most of my early problems were getting a damn PPP connection up...
Dont worry. I was the one who wrote it. Just deposit $50,000 in my Paypal account and you can do whatever you want with it.
Here is the full story behind Freeboxen.com
.inc problem. Formatting was done with a font tag frenzy and nested tables aplenty. Hell, I even threw in a little morse code in white on white just to have a little fun. I was learning how to use the medium, write the code, and build the database. The site sucked in Lynx. Hell, the site sucked in any browser. Freeboxen was always more about the idea than the implementation.
:)
Freeboxen started as a small project, my first stab at putting together a website. I'd written a PHP framework for posting things in a directory structure and what not and figured that I could do something good with it. With a bit more tweaking, Freeboxen was born.
Like most geeks, I had more hardware than I could ever use. Much of it was crap, but there was still some decent, usable kit around. My basic concept was based around a "Pay it Forward" mentality. Do something good for someone else. Even if it means just giving them your leftovers, go and do it. If something comes around that you want, great. If you can inspire someone else to give away something, even better.
I'd never written a real web app before. I was new to PHP, new to MySQL, and new to the web. Freeboxen showed this to the core. I got burned by the
I added a few features over the four months that Freeboxen was under active development. A karma system was a brief experiment gone awry. I'd written about half of a "free auction" system that was dropped. Any time I changed the giveaway process to try and make it "more fair" for the givers, people gave less. The only real positive addition was the forum section.
The first few months of Freeboxen went pretty slowly. About one in twenty visitors (who came in at a trickle) posted something. I gave away all of my old stuff to get started. An occasional mention on a weblog would get things going, but then it would die out again. After a horrific banner exchange experience I tried to buy some advertising. I ran the numbers and realized that it would cost almost ten bucks to find each new poster. At that rate I could pay people to donate stuff. Unfortunately the VC's wouldn't go for it
Sometime in the summer I put Freeboxen in "Fire and Forget" mode. I'd poke around every few days to make sure the site was up and that was it. Not much was going on, a handful of giveaways a week and an occasional forum post. It seemed like there was a core group of die-hards and the flurry of lookie loos. The site just couldn't get to critical mass.
I wound up taking a new job that gobbled up most of my time. Freeboxen became more and more neglected as time went on. At best I only checked it once a week. When my schedule let up a bit I planned on starting a rewrite and getting things back in order. I'd learned quite a bit about PHP and web development and I wanted to fix some of the tragedies that I'd done in the past. I posted a little "I haven't forgotten you" message to the die hards and started thinking about the redesign. And so the fall of Freeboxen began.
A few days later I got up earlier than usual and checked the site. This was probably the first time I'd done a mid-week check in a month. Sure enough- Slashdotted. What I had hoped for months ago inspired nothing but dread. With a surge of adrenaline (funny how a website can promote the fight or flight mechanism) I tried to make sure that everything was OK. I scanned through the comments, most of them looked decent. The site was still up and there was a flood of new posts. I went to work.
When I checked the site at ten, it had rolled over and exposed its soft bits. I'd hoped that I could fix it in time, but posts were popping up about the vulnerable include file. Rookie mistake, I know. All of the newer parts of the site were using safe, parsed, include files. Live and learn. Fix and move on.
Now to the real meat. The death of Freeboxen.
What Slashdot had begun, my web-host ended. I was paying $15 bucks a month to host Freeboxen on a shared server. The hosting policies were very liberal, and specifically stated that there weren't any extra bandwidth charges. About six weeks after the slashdotting I found a charge for several hundred dollars from my web host. No formal bill. I won't get into the details here. Lets just say that I'm disappointed.
Even after factoring in the pittance that showing banners brought in, I was still way in the hole. The codebase was screwed, my web-host was screwing me, and I didn't have time to screw around. I pulled the plug. A few people offered to take the site off of my hands. My one attempt at giving it away fell through. Freeboxen died.
I have half a mind to rewrite the blasted thing and start her up again. Do it right for once. Bare bones and simple. No complicated claims process. No big forum. Just free hardware and a decent search, plain and simple. Open source. How it should have been all along.
James Lincoln
Oh, and I will send that C64 you claimed... It's just that it has some sentimental value now.
-BW
y coputer i in the kitchen, in the little "eating nook". It a bit unconventional but the fridge i at arm length. The only downide i that oetime thing can go wrong.
A couple week ago I duped about 20 ounce of ice water into the keyboard. Buer. I anaged to hut the PC down and unplug the keyboard. Then I duped all of the water out (or o I had thought). Four hour later water cae guhing out of the corner when I picked it up. At that point I figured I had nothing to lose and tarted prying keycap. Every bit of lint and cruft had congealed into ytery pudding under the keycap. Diguted, I pried off every cap and took the thing into the hower. Five inute with the aage nozzle and it wa factory freh again.
Then I diaebled it to dry and tuck it in front of the fan overnight. Everything work great and I havent had a proble ince. In fact Im uing it right now.
-BW
Hell, this is a great idea. Kinda similar to the 'ractives' described in Stephenson's "The Diamond Age". Of course certain plotlines will work out better than others. The old "Murder on a Train" scenario seems ideal. Throw a bunch of people on a train. A NPC gets killed. Sometimes by an NPC, sometimes by a real person (to prevent Turing test detectives). Everyone tries to find the killer.
Technical challenges aside it should be fairly possible. Limited sets, data/character driven plotline. Very free form. Talk to people. Explore. Point fingers. Done. Sure it's cliched, but it would probably be one of the easiest plots to do.
Any of the old Sierra games could probably be recast in this format. No need for a human DM, just people who can stay in character and proceed towards a goal. Half the fun is getting there, and each game could be somewhat different. With the right mix of people the plot would become secondary. Could you imagine the Star Wars plot acted improv style by the cast of "Whose Line is it Anyway?"
Granted, the medium for this sort of experience doesn't quite exist. You would almost need a "stage" that could intepret your movements into 3D animation in real time. Throw in some VR goggles so you could see the action. Add a teleprompter in there to feed you some lines if you want help. Someday it will all come together, but not for a few years yet. I'm looking forward to it.
-BW
ITBWTCL has been available online for awhile. Great read, but I was surprised to see it being hawked for 10 bucks a pop at $BOOKSTORE.
. html
Here is a little more Stephenson that applies to the topic at hand: Laying underwater cable. You need fat fiber going to that data haven don't you?
http://www.wired.com/wired/archive/4.12/ffglass
Its 56 pages long but well worth the read.
-BW
(Posted by Uncle Al in alt.sci.physics.new-theories on 01/22/2000)
You can also check out The UL archive for more info...
-BW
Ive made glass knives for ultramicrotomy before. We used them to section samples for a transmission electron microscope. Although they dont have a single atom edge they are super sharp and easy to make. I havent done this in years so all of this is being pulled out of the haze. If you know what I am trying to say, please jump right in and flesh out the details.
Basically we took a small rectangle of quarter inch thick plate glass and scored it diagonally with a diamond cutter. Then we broke along the score and examined the sharpest edge under a low power microscope. To check the quality ISTR looking for some sort of visual effect caused by diffraction or interference. Of course we also made sure it had a nice straight, even blade. It took a few tries to get a good blade, but man was it ever sharp. These things would shave microns off of a hard plastic sample.
I dont know about making weapons out of these knives though. You might be able to fashion a decent spear head, but that is about it.
-BW
It looks like it might just be a matter of time before the DMCA takes full effect. If the protests fail, and the courts rule in favor of the corporations, we still have a response. Lets simply ignore the monolithic, monopolistic, pay-per-use culture and come up with something better. How about creting an information/media refuge by creatively applying shrinkwrap style licensing?
In the software world, the GPL is an effective response to overly restrictive End-User License Agreements. Some of the best software in the world has been released under the GPL. The author chooses to use that license, and their works are protected under it. On this side of the fence, everything is working pretty well.
Wouldnt it be possible to release other media under a license that is more permissive than the DMCA tainted Copyright? Draw up a new contract that preserves the rights of the artist to profit, and protects the consumers rights to fair use. Include a provision that makes peer-to-peer distribution possible under certain, well defined conditions (payment for example). Make it easy for the end users to be legit, and stay legit.
Recruit artists who are benevolent and informed to start publishing under this license. Show them the benefits to their fans. Demonstrate that it wont cause a loss in revenue. This might take awhile (and some legal precedent), but it could be fairly feasable.
Push the benefits of this style of licensing to the consumer. Put little stickers on all permissively licensed merchandise, so people know when their rights are protected. Show them the benefits of the new licensing, highlighting the added value of having more rights to use the content at their convenience. Maybe even rally around someone who gets busted for doing something innocent under the DMCA copyright (linux DVD anyone?) to have a poster child for the cause. If we could get some consumer demand, then we have more pressure on the artists to release material under the new license.
So how about it? Can we take our ball and go home?
-BW