- parseerror.com:
- useful:
- interesting:
- people i know:
- people i don't know:
- wastes of time:
- software:
- music:
|
programming. porn. politics. mostly the first two.
- Sony settles CD rootkit case with FTC
Woohoo, first snow of the year. The yard looked beautiful, if only for a few hours.
- truth in advertising (mouse over the image)
- Privately, Hollywood admits DRM isn't about piracy
- Disposal of Sodium, 1947
- Steel Hand Stamping
-
But seriously, "The Surge" or any other details of the US invasion of Iraq don't really matter.
The fact that fewer Americans died in 9/11 than have been sent to death by our president since doesn't matter.
The fact that Iraq had nothing to do with 9/11 in the first place doesn't matter.
The US has already built many permanent military bases in Iraq, and will maintain a sizable presence there for the forseeable future.
Why? Because the thousands of American lives and hundreds of billions spent on our little war is an investment
in the world's second-largest oil reserves and will be paid back to the wealthiest Americans ten-fold by
American corporations that exploit it in the years to come.
So you see, it's all quite logical.
- Metals used in coins and medals
- Resin casting
- Making Strong Wood Joints
- Producing ethanol by buying subsidized corn and processing it with energy made by burning coal is not the way forward.
- Congressional Leaders Call on President to Reject Flawed Iraqi Troop Surge
- The Spoils of war — just in case you forgot why the US is in Iraq in the first place.
- Warm winter weather warrants wildlife worry
- Larry
- Lawrence Livermore National Laboratory ES&H Manual Volume II Section 14
- How to cut glass
-
 Clever spam
Clever spammers send messages that look like regular correspondence to spam filters. The clever part is that spammers have turned captcha on its head; instead of using images with text in it to differentiate humans from bots, spammers use images with text in it to fool bots and advertise to humans.
- Densities of Various Materials
- Aluminum Beverage Can - Background, Raw Materials, The Manufacturing, Byproducts/Waste
- The Gas Fired Crucible Furnace
- Spectroscopy - the study of spectral lines
- electroplating
- McDonalds shuts down in healthy town (don't worry it's in Britain)
- backyardmetalcasting.com
- Computers and other electronic products contain lots of bad chemicals, which all currently go into dumps and leach stuff like mercury, lead and arsenic into the soil and water. This problem is exacerbated by the fact that it is cheaper to buy a new TV/VCR/cellphone than it is to fix an old one. Now that electronics are so cheap and widespread it's time to make them less toxic and more recycle-friendly.
- The Periodic Table Table — this guy built a conference table in the shape of the periodic table and then proceeded to gather sample of each element for display in the table. the site is chock-full of interesting photographs, information and stories; one could spend days just exploring this site (and planning their own table).
- reading
Uncle Tungsten after perusing the element links of the Periodic Table Table; it is the story of Oliver Sacks' childhood in Britain around the time of WWII, his fascination with chemistry, experimentation and science in general (which is why I got the book) but also of being Jewish, being part of a large family, being introverted and just growing up.
- I could never keep track of them, so here's a list of U.S. military rank, oh and just for good measure the U.S. military budget
- Biometric identification seems to be all the rage these days; for example one institution of which I know has installed a TSI Handpunch TSI H 103 which clocks you in and out of work via your bare hand instead of a punchcard. One interesting unintended consequence? It is the one place that everyone in the whole office must press and hold their bare hand twice each day. Given that your hands are the least sanitary part of your body (things our hands touch like dishrags, office phones and keyboards contain far more germs than a toilet seat) I would posit that hand scanners are a wonderful, high-tech way to spread germs.
Now, I'm no hysterical germophobe, but I'd rather accept a piece of used chewing gum from a stranger than slide my hand onto an uncleaned plastic slab containing the daily grease and germs of an office full of people, especially during flu season.
I would suggest first and foremost that if you're considering one of these machines for whatever reason you not install it due to its privacy implications; but if you do
install one please provide an adjacent sink and/or hand sanitizer; if your institution already has one, speak up and say something — you sure as hell would if your office had a single toilet with no tissue or sink, and this is worse.
- British "secure" digital passports cracked in 48 hours
- The Mystery of Damascus Blades
- Whenever Godzilla and Mecha-Godzilla fight; it is Tokyo that suffers the most. — Dr. Eggman
-
I'm working on installing mirrors on my parent's garage to reflect sunlight to a part of the roof that doesn't get winter sun, so I was interested to see a study on the focusing of sunlight to the surface of Mars via space mirrors.
- Logical Fallacies
- punk-o-matic — a simple flash-based punk-themed mixer... sweet!
- looks like rewben likes my list+icon style ;)
- CSPI's list of food additives
- nutritiondata.com
- Lodge Manufacturing — home of cast iron cookware
- Animaniacs - Nations of the World
- Platypus water bottles — just make sure to drink it all before you get to airport security, ahem.
-
 The salt flats at Badwater; click image for more pics
Just back from California; travelled to Death Valley (pics), San Francisco and the Pacific Coast Highway. We took a Green Tortoise bus trip to DV, and did the PCH ourselves.
Good stuff:
- San Francisco, as always. One of my favorite cities.
- Green Tortoise is always a blast; it's fun, cheap and always fun to meet people from all over.
- Point Lobos state reserve in Carmel, CA. The rocks and surf are just beautiful, there is also a group of seals living there, and a twisted bonsai-like forest running along the coast.
- parts of the Pacific Coast Highway are arguably the most beautiful drive in the world
- Monterey, CA
- the San Gregorio general store
- there is a tiny restaurant around the corner from the Green Tortoise hostel in San Francisco, the name escapes me, but it has a blue marquee and the best (and cheapest) Vietnamese food I have ever had. we gorged ourselves on spring rolls, coffee, beer, vegetables and enormous bowls of delicious soup and paid less than $25 for two. highly recommended. (note: it's authentic, so if your idea of authentic asian cuisine is General Tso's chicken you might not like it)
- the sunset at the Nepenthe restaurant in Big Sur is beautiful, though ~$20 for a burger and iced tea was a bit steep
Overrated:
- Hey, look! Two brothers charged with conspiring to blow up UK planes bound for the US were released due to lack of evidence. That wouldn't happen in the US, because Americans no longer have their civil liberties!
- Been taking a look at Second Life the past few days, it is sort of a combination of WoW and The Metaverse.
- U.S. intelligence unveils spy version of Wikipedia. Wikis are a great tool for collaboration, but I hope they've studied the problems Wikipedia has had; I hope they require references and take steps to avoid a small number of users from wildly swinging policy or rewriting history...
- Motorola's Motophone. Finally, someone was listening. A nice-looking phone that is easy on the features and easy on the battery. No cameras, no videos, no games, no tv, no internet. I would buy this if it were made available in the USA... which it probably won't be, since phone companies make their money on the afore-mentioned shit customers don't need. That reminds me, I need to go and disable text messaging on my phone to stop these spam messages that I am currently paying to receive...
- The Million Digit Challenge
- Pearl. Taking care.
- Is Attacking Iran a Viable Option? — No, it's not. Besides, the reason Iran would want nuclear weapons is because the country listed right before it in Bush's "Axis of Evil" was invaded. If the USA would stop its extremist foreign policies then perhaps its potential opponents might have less of a reason to resort to extremes. My neighbor doesn't own a gun, and I don't particularly want him to; but if I threaten to kill him and then add his name to a "People To Kill" list then he may go and buy one.
But none of this particularly matters because those who control USA foreign policy aren't particularly interested in world peace or stability.
- Humanity and The Pace of Change
- Perfecting the art of embedded systems
- Reading Hegemony Or Survival
an enlightening book about the way that the United States treats its neighbors; specifically twentieth century foreign policy with an eye towards explaining our current situation. We just keep screwing other countries and expect to get away with it because we're powerful. Furthermore, our aggressive predatory practices encourages countries like North Korea and Iran to develop nuclear weapons; since the best way to avoid direct aggression by the United States is to have nuclear weapons.
- Rice Says 'Axis of Evil' Proven Right — in fact, it was a self-fulfilling prophesy. The President grouped Iraq, Iran and North Korea into the same 'evil' group on national television, and then proceeded to invade Iraq. If you were one of the other two countries, what would you do?
- randomania
- Remember how half of the injuries in the World Cup looked fake? Well they were.
- This video shows a well-known person publicly reneging on a long-standing issue. The thing I find so hilarious is not the content of the lie, but the body language. This person's body language is going against everything they say; it is so egregious that I found it amusing.
- Washington Consensus
- Optimum orientation of solar panels
- NerdTest — i won't reveal how i scored, but let's just say it was
(9604 + log(1))
- 50,000€ Prize for Compressing Human Knowledge
I dug into compression with the aim of assembling an entry for the above contest, and I must say that arithmetic coding seems hard to beat.
My brain is fried and my potential entry is crap.
- Photoshop Perspective Shadow Tutorial
- 2006-10-16 Went to Philadelphia this past weekend.
- Terror Behind the Walls — a kick-ass haunted house inside now-defunct Eastern State Penitentiary in Philadelphia
- Longwood Gardens is a botanical garden outside of Philadelphia that passed through the hands of William Penn and the du Pont family. They had a staggering array of plants, especially in the conservatory. Some of my favorites were
- Flashmob dances in silence to their own iPods in Liverpool street station
- Noah takes a picture of himself every day for 6 years — to me this illustrates truly that "the only thing constant is change". although we say may answer the question "what's going on?" with "nothing"; we are in fact always doing something, even if that something is the monotonous activity of living.
- Kübler-Ross model — a discrete five-stage process by which humans deal with grief and tragedy.
- Fast Functional Lists, Hash-Lists, Deques and Variable Length Arrays by Phil Bagwell
- visual complexity
- Computer crash erases police files — ah, the case for backups.
- Wireframe VW Bug — I always liked stuff like this because you can see how things work underneath.
- Affordable DIY Window Insulation — good metafilter thread that mentions many different techniques, a few of which are new to me.
- U.S. Dept of Energy recommendations on residential insulation
- Keeping the Heat In — a thorough guide to home insulation from the Canadian Office of Energy Efficiency
- My new project is to turn an AVR Butterfly into a programmable digital thermostat with an aim towards saving money (and natural gas) this winter. And learning how to program the Butterfly, of course. The neat thing is, the Butterfly already has the ability to sense temperature in the form of a thermistor.
- Google's paper on High efficiency power supplies for home computers and servers
- 80Plus certified manufacturers — manufacturers producing power supplies which are >= 80% efficient, as opposed to the usual ~65%
- I took a look at efficient power supplies from SeaSonic; they're very nice and come highly recommended, but at the current rate would take over a year to pay for themselves. So for now I'll work on reducing the electrical load of my home setup; but the next time I'm in the market for a new computer I will be checking performance per watt, not just Hz.
- The Texas Manual on Rainwater Harvesting
- A Low-Impact Woodland Home
- Our Cool House —more than you want to know about an energy-efficient Maryland house
- Nader Khalili — architect behind Superadobe, a method of building that is cheap, fast, easy and produces earthquake-resistant buildings. His efforts received the Aga Khan Award for Architecture 2004.
- dome homes
- digitemp — software for querying a 1-wire sensor microLAN, as well as instructions and links.
- nitrogen — nightmare and syscrash's GTK-based background chooser for X-Windows.
- books.google.com
- OpenBSD 4.0
- ION Audio ITTUSB USB Turntable
- SIM card pinout
- Israel dropped 350,000 cluster bombs on civilian areas in southern Lebanon in the last few days of the war
- Major American cities are using sunfish as biological sensors to detect impurities in their water supplies (think canary in a coalmine). Good idea! The story is placed in the context of guarding against terrorism of course, since that's the current American obsession; but this technique's ability to detect everyday water problems is what makes this practical and interesting.
- U.S. war prisons legal vaccuum for 14,000
- 2006-09-17
Building Green — a broad overview of minimally-destructive/sustainable building design and construction and a step-by-step look at building a cabin.
- Dogville — a powerful movie about the ugliness of everyday people, done in a style that takes some getting used to. I particularly liked this movie because of its focus on character development and story.
- Lucky Number Slevin — a quirky movie about revenge, trust and being out of touch.
- bwired — a house with automated monitoring of electric, water, gas, phone, etc. usage.
- portmanteau
- Interview with Adam Dunkels — embedded software development methodology, tiny TCP/IP stacks, wireless sensor networks, etc.
- The 1.7 Kilogram Microchip: Energy and Material Use in the Production of Semiconductor Devices
- interested a bit in doing AVR microcontroller stuff again, trying to get things set up again...
- Infrared
- I am pleased to announce a new project of mine named LANassert, a poorly-named, well-intentioned project with the aim of making sense of one's local network. Feel free to download the source from my subversion repository:
svn co svn://parseerror.dyndns.org/LANassert/
LANassert is a userspace command-line program targeted at network admins and nosy programmers.
The user writes a series of rules (assertions) describing what healthy, good traffic on their network is supposed to look like
(i.e. "All DNS traffic should go to/from Official DNS Server 1 or 2").
LANassert applies these assertions to network traffic in real-time and notifies the user when one of them doesn't match.
Using this feedback, the user can investigate the cause of this traffic — correcting misconfigured boxes, investigating suspicious traffic,
and augmenting the ruleset.
After a few rounds of feedback the user ends up with a set of rules that accurately depicts what their network really looks like,
which is a valuable resource.
Unlike an idealized, static network diagram the ruleset will show you all the warts of your actual network and can be actively tested.
- argh. trying to get started using some sort of GUI toolkit and failing. cannot get SDL to compile with Visual Studio.
- Tsunami Harddisk Detector: Software that detects tsunamis by monitoring hard disk jitter of a network of PCs. Awesome project... Out of the box thinking, practical and topical. Whether or not it works, we'll see. App seems to not work; its network update tries fetching a URL that responds with a Forbidden error. I contacted that author on 2006-09-07.
- SeisMac: turn your MacBook into a seismometer.
-
2006-09-07 I'm trying to put together a Wi-Fi triangulation app for Windows that would allow the location of APs and of client machines, assuming the position of a few APs is known and a few machines on the (W)LAN run it. Unfortunately, the API and documentation from Microsoft are horrendous (par for the course from them). This app would be much easier to write for Linux, but unfortunately that's not an option this time.
- 2006-09-05 Using sysinternals' excellent ProcessExplorer tool I noticed a pair of processes that I couldn't explain, and when killed exhibited the classic Robin Hood and Friar Tuck behavior, each re-launching the other. I managed to get the virus off the machine, but it made me realize how poor the built-in tools for Windows really are. If I did not already know about and have ProcessExplorer and an anti-virus I would have had a much harder time even discovering the problem, let alone fixing it. What I really wanted once I discovered the rogue processes was the ability to trap them (i.e. throw them in their own jail-like area where they would be isolated from the rest of them system), freeze them (i.e. stop them mid-run and examine them), monitor their activity as well as take complete control over them, (i.e. turn off the ability for them to perform certain syscalls). I will have to investigate if tools like this already exist, and if not...
- about screwhead types... found a "spanner" screwhead while trying to take apart a pot-less coffee machine.
- fark hot sauce thread
- How to crash Internet Explorer
- RFC 1002
- Strange Attractors and TCP/IP Sequence Number Analysis
- Fastcompany talks Compact Fluorescent Lightblubs
- Penny alcohol backpacking stove
- Why DRM Doesn't Work
- 2006-08-27 I made some "Hold Onto Your Hat" Habanero salsa using my homegrown habanero peppers and it was tasty. We also have lots of leftover beer, so I'll be drinking heavily for the next few days in order to get rid of it.
- Well I always knew my name would end up in a file named STUPID_IDEAS.txt...
- Chillies aid Sumatra jail break
- SPAN Configuration for Cisco
- Identify vendor by MAC address: IEEE OUI database
- Snort
- μtorrent
- Learning from the Amazon technology platform
- equanamity
- 2006-08-18 So I found a habanero pepper plant at a garden store the other week and bought it. Habaneros are pretty much the hottest thing on the planet; can't wait to try them in a salsa. Do these look ripe to you?
- Secrets of the Pirate Bay
- Evangelical Scientists Refute Gravity With New 'Intelligent Falling' Theory
- What's The Greatest Software Ever Written?
- articles on embedded systems
- empiricism
- Ropes: An Alternative to Strings
- Installing NeXTstep 3.3 in qemu on Windows XP (I'm using VMWare instead)
- how does one configure a PC to start up automatically once power has been restored after a power outage?
- some BIOSes have a "Boot On Power" option or some such, must do more research.
- Dell Optiplex GX60 Series BIOS has both "Auto Power On" and "Remote Wake Up" features. by default the former is disabled and the latter is enabled.
- some BIOSes have Wake-On-LAN which keeps the NIC always on in a special mode -- if it receives a special network message the computer boots up.
the first solution is more elegant of course, but i thought it would be cool to be enable Wake-On-LAN for my computers at home and have my Linksys WRT54g running a watchdog for them. i've written some almost-working software and have the Sveasoft firmware running on my WRT54g, almost the way I want it. next i need to get gcc cross-compiling for MIPS so I can run my programs on the WRT54g.
svn co svn://parseerror.dyndns.org/awol/ /tmp/awol/
- Human Development Index
- Radia Perlman on Spanning Tree Protocol:
I think that I shall never see
A graph more lovely than a tree.
A tree whose crucial property
Is loop-free connectivity.
A tree which must be sure to span.
So packets can reach every LAN.
First the Root must be selected
By ID it is elected.
Least cost paths from Root are traced
In the tree these paths are placed.
A mesh is made by folks like me
Then bridges find a spanning tree.
- ATI Radeon drivers from OmegaDrivers are better than the ones for ATI!
- How to break out of a chroot() jail
- ullage
- The Need for Asynchronous, Zero-Copy Network I/O by Ulrich Drepper
- 5-in-1 network admin's cable
- Splay tree
- tridge on thread vs. process performance
- Port of GNU Screen to cygwin
- Myths, Lies and Truths about the Linux Kernel
- I'm very pleased to report that I recently installed OpenOffice v2.0.3 (at someone else's request) and it is a
HUGE improvement over v1, which I found repulsive and unusable. v2 is less bulky, loads faster, is more responsive and looks cleaner than its predecessor and I am
happily using it. Congratulations to the folks that put in the time and effort into OO.
- 2006-07-25 Solaris 10 System Administrator Collection
- HOWTO Setup a DNS Server with DJBDNS
- RhymeTorrents
- Tesla Motors — an American start-up car company focusing on cars that are 100% electric and 100% sexy
- Claude Shannon - Father of the Information Age
- Who Killed The Electric Car?
- The Ultimate Beer Ratings Chart
- U.S. Speeds Up Bomb Delivery for the Israelis
-
< kanzure> since we can get apes to do sign language, can we get them on to typewritters yet?
< nyef> kanzure: How do you think PHP was designed? ^_-
- A quick tutorial on generating a huffman tree
- labs.google.com/papers
- How To Build OpenSolaris
- FastCGI
- HTTP/1.1 Header Field Definitions
- SEDA: An Architecture for Highly Concurrent Server Applications
- TCP/IP stack hardening
- 2006-07-13
So I spent all yesternight trying to maximize bandwidth utilization on a side project of mine (
svn co svn://parseerror.dyndns.org/web/),
and on the drive to work this morning on I-95 I noticed that the to-NYC side was completely
clogged while the away-from-NYC side was pretty sparse and I thought that was pretty bad bandwidth utilization. I imagined a divider system that was mobile
and could be adjusted from one side or the other, stealing a lane or two from the space-rich side and giving it to the space-poor. But then I
considered the drawbacks, and there are lots of them (potentially), and I sort of left it at that.
Well, it turns out that such systems are already being planned for some of the USA's most crowded highways
(such as I-15 in San Diego near dooky):
- VMotion from VMWare lets you transfer OS instances between
physical machines while they're running without interruption. Stop for a second and re-read that. And then think about what it means.
I have not used this myself but I'm interested. I've only done mickey mouse shit with VMWare so far, but I love it.
- epoll@everything2
- Kqueue: A generic and scalable event notification facility
- The Myth of the New India
Clips from the improv show Whose Line Is It Anyway? I love this show.. Dead. Damn copyrights.
- Inside The Linux Scheduler
- A Lightweight Method for Building Reliable Operating Systems Despite Unreliable Device Drivers
- The C10K Problem
- OK, so C10K says we should be able to handle 10,000 simultaneous clients with a 1GHz machine and efficient software. I've a 2GHz processor, so the webserver I'm
writing better be able to do 20,000 ;)
- 2006-07-03Walked past and noticed The Two Man Gentlemen Band in Central Park yesterday.
- PingTunnel
- The Amazing Cynicalman Paperback!
- The Deepest Hole
- Naughty Intel
- Gap buffer
- Google Earth
- Online Etymology Dictionary
- Kimono
-
root@pizzabox:~# emerge sync && emerge -avt world
*** Deprecated use of action 'sync', use '--sync' instead
^C
root@pizzabox:~# emerge --sync && emerge -avt world
- Where The Hell Is Matt?. At first I thought this was kind of cheesey, but the more I watch it the more I like it.
- Good tip: Scramble memory to detect invalid accesses to already-freed heap memory
- PHP Pagination Example: #php newbies regularly ask about pagination, so here's how to do it.
- Pthreads for Win32
- ZFS tips & tricks at tech-recipes.com
- Functional Programming For the Rest Of Us
- 2006-06-19
This Is Not A Place of Honor
- How Will Future Generations Be Warned? Steps planned to warn future generations of the radioactive material buried by The Waste Isolation Pilot Plant. They plan to use many large, obvious markers and warnings in many languages in order to ensure no one disturbs the site over the next 10,000 years. The more I think about it the more I disagree with this plan. Here's why:
Link to #10,000_years
How Does One Keep Something Safe for 10,000 Years?
I would posit that the best guide for the next 10,000 years is the last 10,000. While the future will certainly not mirror the past in detail, the same broad issues will indeed manifest themselves over the future millennia as have in the past. Indeed, it would be naive to think that time will treat us any differently than those who came before us.
What Do We Know About the Past?
Everyone knows about Stonehenge, the pyramids of Giza, the Incan city of Machu Picchu and maybe even the Mayan's Chichen Itza. But that's the point — if large sites are erected they are discovered, plundered, destroyed, explored and then "restored" (usually in this order). "Hidden in plain sight" doesn't quite work at these scales.
Why do humans build giant structures, anyways? Almost certainly selfish reasons, whether explicit at the time of construction or not. Whether built to facilitate rituals, honor kings, or provide housing, in the end they serve the same purpose. Documentation and and (hopefully) preservation of a piece of the culture that built it. Mankind is acutely aware of its own mortality, and even if in 50 years a king will no longer exist, in 5,000 his memorial may still. Large structures are never built in plain sight for things that are intended to be hidden.
Every single ancient site that has ever been found has been explored. Why? Some of these sites are these civilization's most sacred places: homes to rituals, tombs of their kings. We would be offended if a team of researchers showed up in our churches or dug up our grandparents' graves; what right have we? Humans are curious. Our manners are excercised inversely proportional to our detachment from the subject. In the distant future, our ancestors will feel about us and our remains as we do about the Iceman on the cover of National Geographic (he's about half as old as our site must last).
Language and Warnings
We have no idea if any spoken languages even existed 10,000 years ago, and we haven't been able to find any written ones half that old. We can safely assume that at best, our current languages which we love dearly, will not survive as they are. How will future generations read our warnings? If it wasn't for the Rosetta Stone, how would we be reading Egyptian hieroglyphs today? The pictures on the walls of pyramids could have read "WARNING: IMMINENT DEATH" (and some of them probably did), but that didn't do a very good job at keeping grave robbers nor scientists from unearthing entire sites in a quest for riches and knowledge. All ancient sites that have ever been discovered have been excavated.
Stonehenge
We don't even know exactly when Stonehenge was built, but it is at least less than half as old as our site must last. It is known that Stonehenge has some astronomical significance, though scientists have been aruging for years about even this. While we know some very rudimentary facts, we understand very little about the people who built it or their purposes for doing so.
If Stonehenge contained radioactive waste from an advanced culture from 5,000 years past, we wouldn't have even known it until 1928 when Geiger and Müller upgraded Geiger's original primitive radiation detector.
What Is Certain About the Future
Bad Times
If the past has taught us anything, it has taught us that the the coming millenia will bring good times and bad. There will be wars, famine, climate change. Families will come to power, rule, and die off. Countries will be born and die. The oceans and deserts of the world will rise, fall and shift as does the global thermometer. Once great cities will dwindle and die as new ones are built. While we don't know where or when these things will happen, we must accept that they will. A site cannot be guarded over such a long period of time.
Conclusions
- Every site that has ever been discovered has been explored.
- No warning has ever kept a site from being excavated.
- Therefore, in order to keep the site from being excavated it must never be found.
The logical conclusion is NOT to model a repository of radioactive waste after the known ancient sites that have withstood the test of time. The vast majority of these sites have been plundered long before modern discovery, and many of the oldest sites are very poorly understood at even the most fundamental levels.
Instead, hide it away. No berms, no pyramids, no temples. No warnings or markers. Fill it up, fill it in and cover it up. I urge the WIPP to resist the temptation of building a temple to the Gods of fission.
- 2006-06-17 Updated SELECT * IS EVIL
- NY Underground
telnet ascii-wm.net 2006
-
<justie> i did something stupid
<justie> chmod -x chmod
<justie> anyone knows how to fix it?
cp /bin/cp /tmp/chmod # make copy of another binary with +x
cat /bin/chmod > /tmp/chmod # cat orig binary into +x file
sudo mv /tmp/chmod /bin/ # overwrite existing file
- UTF-16
- stack backtraces in glibc
- Jarritos
- 2006-06-14 worked a bit on shac today.
- data clustering
- Silk icons - very sexy set of icons in PNG format. so nice that if i used them here, they'd make my other icons look like shit.
- movie fonts
- Serial Programming HOWTO
- 2006-06-11The Diamond Invention by Edward Jay Epstein
- Ethereal is now known as Wireshark
- DocBook
- The Not So Short Introduction to LATEX 2ε
- Slashdot got a new CSS layout (finally). It's been a long time coming and is very nice, balanced, pleasing to the eyes and easy to read.
- The Internet isn't free
- List of colors
-
At A Glance...
I was just checking out the feature grid of a software product and realized that it was not clear, at a glance, of which features were
supported in which versions. Compare for yourself:
|
(A) Pizza5000 Features
|
| Free
| Standard
| Kitchensink
|
| Feature A
| Yes
| Yes
| Yes
|
| Feature B
| No
| Yes
| Yes
|
| Feature C
| No
| No
| Yes
| |
|
(B) Pizza5000 Features
|
| Free
| Standard
| Kitchensink
|
| Feature A
| ✓
| ✓
| ✓
|
| Feature B
|
| ✓
| ✓
|
| Feature C
|
|
| ✓
| |
|
|
For me B is far more informative, at a glance, than A. The "icon vs. nothing" approach is instantly recognizable, while in the "yes vs. no" approach the words aren't different enough, and my brain needs to interpret each one individually. It is also harder to figure out the pattern which is immediately obvious in B.
After looking at some other examples, I found that adding color was an effective way of meeting in the middle... colorizing the text or background gives you the ability to add more information than just a yes/no...
|
(C) Pizza5000 Features
|
| Free
| Standard
| Kitchensink
|
| Feature A
| Yes
| Yes
| Yes
|
| Feature B
| No
| Yes
| Yes
|
| Feature C
| No
| No
| Yes
| |
|
(D) Pizza5000 Features
|
| Free
| Standard
| Kitchensink
|
| Feature A
| Yes
| Yes
| Yes
|
| Feature B
| No
| Yes
| Yes
|
| Feature C
| No
| No
| Yes
| |
|
|
...There is the problem, albeit a relatively minor one, of relying on CSS support (not all browsers have it, or have it properly implemented) to make your grid more readable. And while I think D actually looks kind of nice, there is something psychologically unsatisfying about having No listed along with your product; I think B's focus is more positive... perhaps we could meet in the middle...
|
(E) Pizza5000 Features
|
| Free
| Standard
| Kitchensink
|
| Feature A
| Yes
| Yes
| Yes
|
| Feature B
| -
| Yes
| Yes
|
| Feature C
| -
| -
| Yes
| |
|
|
Hmm, that's not too bad; plus it gives you the possibility of adding details...
|
(F) Pizza5000 Features
|
| Free
| Standard
| Kitchensink
|
| Feature A
| Up to 3
| Up to 10
| Unlimited
|
| Feature B
| -
| 30 Days
| 1 Year
|
| Feature C
| -
| -
| Yes
| |
|
|
Though, I don't know how well the light green and red backgrounds come out when printed as black and white...
The more I consider D the more I like it; especially if you're trying to bump someone up to a more expensive version...
|
- Autonomous Software Improves Data Flow
- What the hell is it with Dunkin' Donuts in Rhode Island? I was there over the weekend and in one day I probably saw 20 Dunkin' Donuts, just driving around. So here's the explanation: Dunkin' Donuts in Rhode Island. Oh, and I lose a bet, Dunkin' Donuts was founded in Quincy, MA; not RI.
- Apple Closes OS X
- Just give me a simple phone
- Why NSA spying puts the U.S. in danger
- serial keygen tutorial
- Atmel is having a contest, I applied and received a free AVR Butterfly... now I just need to figure out what to do with it...
- pthread.h
- 2006-05-22 installed and playing with MediaWiki for the first time; it's what Wikipedia is based on. Great software, though I've heard the source code is horrendous.
The Best American Travel Writing 2001 — so far, read good stories on religion/politics in Iran and hunting by dogsled in Greenland.
The Japanese Way — I'm travelling to Japan later this year and am reading up on the culture. Their relatively conservative nature on the topics of love, respect and work doesn't surprise me, but the breadth of Western influence does.
- The ACM Digital Library
- Winning — and Losing — the First Wired War
- Senate Votes to Make English the `National Language' of U.S.
- How to destroy the Earth
- The Windows XP Command Line, Batch Files, and Scripting
- apostasy
Forbidden Nation: A History of Taiwan — I'm going to Taiwan later this year and am reading about its history.
- 2006-05-17My NETGEAR WG511 v2 Wireless PC Card would not work, so I yanked it out and destroyed it with my bare hands. I didn't mean to, but I was so pissed off it just sort of happened; the card is so fragile. I don't think the hardware is to blame, probably the drivers, or Windows; but I can't exact revenge on either of those in a satisfying, physical way. After days of frustration with the NETGEAR I put in a Symbol card, which works fine. $60 down the drain.
- Immigrants at Mid-Decade: A Snapshot of America's Foreign-Born Population in 2005
- Technology Review
- AQTime
- Barbados
- Spot the Bug
- Homebrew CPU
- What Does AT&T have to say to its customers about the NSA?
-
 Electronic Frontier Foundation: Class-Action Lawsuit Against AT&T for Collaboration with Illegal Domestic Spying Program
- Couscous: The Measure of the Maghrib
- Laundry Guide to Common Care Symbols
- The Engines of Our Ingenuity: a great radio program that I listen to every morning.
- 809 Area Code Scam
- Sarbanes-Oxley Act
- Can We Make Operating Systems Reliable and Secure?
- Xen and the Art of Virtualization
- matriculate
- Hash tree
- Controller Area Network
- The FreeBSD development model
- Myth of the Nines
- floating wind farms
- Airlines try smarter boarding
- Electronics circuits based on AVR micros
- The RFID Hacking Underground
- 2006-05-04when programmers talk to non-technical people they tend to be quiet. when they talk to other technical people, especially other programmers, they always tend to talk at high speeds and cut each other off; trying to convey as much information as possible in as short a timeframe as possible.
- DIYDryEraseBoard
-
C:\avrdude\bin> avrdude -p m16 -c stk200 -t -v
avrdude: can't open device "giveio"
avrdude: failed to open parallel port "lpt1"
loaddrv.exe install giveio
loaddrv.exe start giveio
- Malaysia
- Indonesia
- Telephone FM transmitter
- Diminishing returns
- Puff-n-Stuff's AVR kit
- Disable USB Storage in Windows XP
- The Cell Broadband Engine processor security architecture
- Mersenne Twister Homepage
- Programming Bits
- g1powermac's multi-microcontroller hardware project
- Build Your Own AVR Starter Kit
- MiniLA
- How far can you drive on a bushel of corn?
- Get IEEE 802®
- Hubble Ultra Deep Field
- Swarm robotics
int
boyer_moore(const char *needle, const char *haystack)
{
int i, j, k; /* indexes */
int m = strlen(needle);
int n = strlen(haystack);
int skip[256]; /* per-char skip table */
if (0 == m)
return 0;
/* default skip table entries */
for (k = 0; k < sizeof skip / sizeof skip[0]; k++)
skip[k] = m;
/* per in-word char skip entries */
for (k = 0; k < m - 1; k++)
skip[needle[k]] = m - k - 1;
/* search forwards through haystack */
for (k = m - 1; k < n; k += skip[haystack[k]]) {
/* search backwards through needle */
for (j = m - 1, i = k;
j >= 0 && haystack[i] == needle[j];
j--)
i--;
if (-1 == j)
return i + 1;
}
return -1;
}
- I moved, and will be without internet for several days!
- LC3 Simulator
- dither
- The Marsaglia Random Number CDROM including the Diehard Battery of Tests of Randomness
- Noise / Chaos / Random Numbers and Linear Feedback Shift Registers
- C Compilers for ARM: Benchmark
- TypeABC (my best score: 3.655)
- Using the Free SDCC C Compiler to Develop Firmware for the DS89C420/430/440/450 Family of Microcontrollers
- People scan web pages in an F-shaped pattern
- So spox in #php has a bot, mod_spox, that has all these nifty features, one of them being the ability to translate between languages. Initially it was just a one-off thing
where you'd say
@translate en|es Hello! and get <mod_spox> Hola! which is neat but not really useful. Then, we had someone who only spoke Spanish
enter the room and ask for help. My Spanish is very rudimentary and I couldn't really help him; then I suggested that a feature be added to mod_spox to "attach" translate
to a person, so if they only spoke Spanish it would translate whatever they said to the channel from Spanish->English and vice versa. So spox added this feature and today someone
speaking only French came in:
< spox> @translate-add fr {-Neo-}
<mod_spox> {-neo-} is now being tracking for translation.
...
<{-Neo-}> elle ne veu pas s'executer et il y a une fatal erreur
<mod_spox> Translation ({-neo-}): it veu not executer and there is fatal an error
<spox> {-Neo-}: what is the error?
<mod_spox> {-neo-}: quelle est l'erreur ?
<{-Neo-}> "Fatal error: Call to undefined function: imagecreatefromjpeg() in /www/.. line 19"
<mod_spox> Translation ({-neo-}): "Fatal error: Call to undefined function: imagecreatefromjpeg() in /www/.. line 19"
<HaNtU]uU[> probably not compiled with it.
<spox> {-Neo-}: you need to compile PHP with GD support
<mod_spox> {-neo-}: vous devez compiler PHP avec l'appui de GD
...
<{-Neo-}> merci mod_spox
<mod_spox> Translation ({-neo-}): thank you mod_spox
<spox> lol
<chalupah> I thought that was pretty awesome, myself
<spox> i know
<{-Neo-}> spox je ne parle pas anglais
<mod_spox> Translation ({-neo-}): spox I do not speak English
<{-Neo-}> je ne parle que francais
<mod_spox> Translation ({-neo-}): I only speak French
<spox> {-Neo-}: yes, i know
<spox> @translate-remove {-Neo-}
<mod_spox> {-neo-} is no longer being tracked for translation.
So, it makes the conversation a little harder to follow, floods the chan a bit, and produces poor English and probably worse French, and mod_spox gets
thanked instead of spox, but in the end it at least provided an opportunity to communicate and hopefully got {-Neo-} on his way; whereas previously
we would not have been able to help him at all.
- quagmire
- The Easter Bunny Hates You
- 40 Pin AVR Development Board
- Bridge design pattern
- I am helping someone out in ##microcontrollers who is trying to read input from a generic keypad using a Motorola 9S12DP256 and a C compiler. I wasn't much help with the pinouts, but here's my solution for polling the keypad for input:
/**
* 0x6 0x5 0x3
* +---+---+---+
* 0xE0 | 1 | 2 | 3 |
* +---+---+---+
* 0xD0 | 4 | 5 | 6 |
* +---+---+---+
* 0xB0 | 7 | 8 | 9 |
* +---+---+---+
* 0x70 | * | 0 | # |
* +---+---+---+
*
* we write the row we want to read into the high
* 4 bits and then read the low 3 bits, which
* contain a 0 in one bit if a column in that
* row has been pressed
*
* PTH
* bits 7 6 5 4 3 2 1 0
* ------- -------
* what row col
* how? write read
*/
static unsigned char keyscan(void)
{
static const char Keys[12] = "123456789*0#";
register unsigned char key = 0, col, row = 3;
do {
row = (row + 1) & 3;
PTH = 0xF0 ^ (0x10 << row); /* write 0 to read row */
delay_nano(3); /* delay */
col = PTH & 7; /* read col back out */
} while (7 == col); /* no zeroed bits, no press, retry... */
col = (col >> 1) ^ 3; /* 6->0, 5->1, 3->2 */
key = Keys[(row << 1) + row + col];
delay_milli(20); /* debounce time... */
return key;
}
- What do you do when someone steals your content?
- "That's the beauty of the Internet baby, you can steal whatever you need!" — carterman
- ATMega8515
- HOWTO get started with an AVR at minimal cost
- Gameboy CPU Manual
- Development Tools for AVR
- Lessons in Electric Circuits
- The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
- Programming From The Ground Up
- AVR314: DTMF Generator
- AVR240 4x4 Keypad - Wake On Keypress
- patois
- 2006-04-11A Mathematical Theory of Communication
- Power Supply Tutorial
- metronome
- What exactly is a capacitor?
- How To Solder
- φ, the Golden Ratio
- Mac System 7 in Flash
- PizzaTouch(tm) touchscreen monitors
- FreeRTOS
- Entropy encoding
- Into the Core: Intel's next-generation microarchitecture
- 555 Timer/Oscillator Tutorial
- 2006-04-05Virtual Breadboard - this is sweet; i've been trying to get a basic electronics set together... screw it, this works ;-D
- Let's Build a Compiler!
- Algorithmic Complexity Attack
- 2006 Underhanded C Contest
- escapefromchroot.c
- ktechlab
- Are Software Patents Evil?
- i'm helping some friends are settings up a mixed, mostly Apple, local network
- 2006-04-02An efficient means of generating psuedo-randomized bit populations - someone in #microcontrollers wanted a lightweight way of generating n random 1 bits on a 16-bit cpu where 8 >= n >= 0. I implemented a lagged Fibonacci generator.
- dooky keeps sending me weird books and I keep reading them. currently: The Sirens of Titan by Kurt Vonnegut. It includes a billionaire, a Martian army, a Chrono-Synclastic Infundibula and Kazak: Hound of Space. But really it's a love story... I think. Sirens is a strange book, but quite readable.
- 2006-03-30SPARC Assembly Reference Manual
- IA-32 Intel Architecture Software Developer's Manuals
- I remember in sixth grade we were trying to make a schedule for an after-school project. Everyone has different schedules
so no one could agree which days to stay after. The teacher gave us three candidate days of which everyone would vote for their favorite two
and we would select the highest two. I suggested that we invert the logic and vote out the worst day. Everyone was confused.
- Priority Inversion in the Mars Pathfinder
- Scientific Computing on the Sony PlayStation 2
- Mechatronics demo board
- memoize
- 2006-03-28Erlang for C Programmers
Hmm. Erlang is interesting; I've noticed that folks in #erlang and on the mailing list try and use it
as a general-purpose programming language, often with less-than-excellent results. Erlang is well
suited for what it was designed -- writing highly available applications distributed over a network.
For instance, the Erlang virtual machine is designed to crash when any error or any unexpected/unhandled
condition occurs (every possible situation must be explictly handled).
Eshell V5.4.6 (abort with ^G)
1> Foo = fun(N) -> if N > 0 -> N end end.
#Fun<erl_eval.6.43886099>
2> Foo(1).
1
3> Foo(0).
=ERROR REPORT==== 30-Mar-2006::15:47:49 ===
Error in process <0.30.0> with exit value:
{if_clause,[{erl_eval,expr,3}]}
** exited: {if_clause,[{erl_eval,expr,3}]} **
4>
For something like a telecommunications network that must be rock-solid is a good thing; it helps test for completeness
(whereas a program in C or asm will error and happily chug along).
But for hacking and/or playing around, this is a pain in the ass. Also,
while Erlang deals well pre-defined tokens it is has weak string and parsing support.
-
So the other day someone piqued my interest about GMP, an arbitrary-precision math library
which i'd been aware of for years but never really had an excuse to use.
so i wrote some stuff using that; then someone in #php had a bot that'll execute code
(secure, really! ;D) but didn't have the GMP extension compiled in; also it would only
accept ~300 chars of input, which explains why the code is a bit dense.
so here's my own (crappy) arbitrary precision addition and Fibonacci sequence calculating
code. it is of course significantly slower than GMP, but i'm still proud of it :/
<?php
function add($a,$b,$x){while(ord($a[$i])||ord($b[$i])){
$t=$a[$i]+$b[$i]+$c;if($c=$t>9)$t-=10;$a[$i]=$t;$i++;
}$c&&$a[$i]=$c;$x=$a;}
function fib($n){$f=array("0","1","1");for($i=1;$i<=$n;
$i++){$j=$i%3;$k=($j+1)%3;$l=($k+1)%3;add($f[$k],$f[$l],
&$f[$j]);}return strrev($f[$j]?$f[$j]:0);} echo fib(
$argv[1]);?>
pizza@pizzabox:~/php$ php -q fib_no_gmp.php 1000
434665576869374564356885276750406258025646605173717
804024817290895365554179490518904038798400792551692
959225930803226347752096896232398733224711616429964
409065331879382989696499285160037044761377951668492
28875
Also this relates indirectly to BCD
which I've been reading about a bit in relation to
instruction sets and all that fun low-level stuff... maybe i'll write a small set of
BCD routines in C just to get a feel for it.
Also been thinking about doing some embedded stuff, but I need a good project...
- Porting a screen-management utility to eCos
- Octomatics - finally, a number system for people with 8 fingers
- 5,000+ lines of Java to print hexadecimal via thedailywtf.com
- How OS X Executes Applications
- 2006-03-23binopt. what a good idea.
- Tiobe Programming Language Index
- Wirth's Law
- Condor: High Throughput Computing
- MPI: a library to facilitate parallel computing.
- shadowserver
- FAT12
- minisheep. best score was all 8 captured in 9 seconds.
- The Vim/Cscope Tutorial
- Some moron at IBM claims The 'next big thing' no longer exists. Perhaps not at IBM.
- Introduction: The WINDOWSX.H Header Facilities for Win32 SDK Programmers
- /. discussion of php6's direction. i think they should take lots of stuff away before they add...
- Coverity runs automated source code checks on popular open source tools
- this month's CRYPTO-GRAM is out, always a good read
- graffiti in Melbourne by Serp
- all the words come out wrong. have you ever spent a long time thinking about something, and then tried to express those thoughts elegantly and intelligently and instead fuck up the terminology and simplify everything to the point where all the interesting details, the very essence of this idea, fail to make the leap from your brain to your mouth? this happens to me increasingly often.
- PADS
- IBM's GPFS
- interstice
- Welcome To the Home of Tetration
- How to be a Programmer: A Short, Comprehensive, and Personal Summary
- The Peril of Java Schools
- AVRFreaks
- NASA patents wall-penetrating eavesdropping
- Birthday attack
- amortized
- 2006-03-08Got some feedback on lanmap, fixed up some win32 stuff. Forgot I had cygwin installed and in %PATH%. Whoops.
- empirical
- BBC offers epic portrait of Earth
ARM: System-on-Chip Architecture — so far a very readable introduction to a bit of processor design, theory and ARM specifically.
Data Structures and Algorithms haven't started it yet
The Design and Analysis of Computer Algorithms haven't started it yet
- Our Violent Universe
- Develop your own filesystem with FUSE
- disablable (adj.) able to be disabled. word or no? i propose yes. now only if yesternight would catch on...
- Using advanced compiler technology to exploit the performance of the Cell Broadband Engine architecture
- Fixed Point Arithmetic
- Floating-Point Computing: A Comedy of Errors?
- Scripting Irssi
- i386-PC-Linux System Calls
perl -MSocket -nle '/^(\S+)/&&$h{$1}++}{
for(sort{$h{$b}<=>$h{$a}}keys%h){
$|=printf("%8d%16s %s\n",$h{$_},$_,
((gethostbyaddr(inet_aton($_),AF_INET))[0]))}'
/var/log/apache2/access_log
pulls out IP addresses from the apache access log, gives me a total count of HTTP requests, then does a reverse lookup to
see who's hitting my webserver
sudo equery belongs /usr/bin/equery
- Freescale
- An Erlang Course
- MapReduce
- "The Pimping Lemma"
- Counterpane's (Network) Attack Trends 2005
- VAX/VMS on Linux using SIMH
- IA-32 Intel Architecture Software Developer's Manuals
- AMD64 Architecture Programmer's Manual Volume 3: General-Purpose and System Instructions
- Software Optimization Guide for AMD64 Processors
- Whadduya know. I went to
about:config in Firefox and turned browser.sessionhistory.max_total_viewers
to 0 as is mentioned by ben, and Firefox at the end of a normal day of web surfing, is using ~78 MB RAM. it used to be twice that or more.
- Walled garden
- Serial UART, an in-depth tutorial
- heap memory behavior discussion thread on slashdot. i don't know who is right.
- 2006-02-14been working on my solver for the Post Correspondence Problem. can currently solve instances having solutions up to length 132, the next highest known solution, 198, is not yet attainable. converted internal representation from bytes to bits, making storage ~8x more efficient and increasing speed as well (at the cost of uglier code). also added rudimentary ability to recognize dead-ends and reuse their storage space in an effort to minimize memory usage. longest solution i know of is >700 in length, so I have a long way to go. need better heuristics for identifying dead-end paths and eliminating them.
time ./a.out 0011,00,1 0,1,001
#: 0 1 2
U: 0011 00 1
V: 0 1 001
Holy shit, we found the answer!
It took 132 branches and is 252 symbols long. Here it is:
#: 0 0 1 1 2 1 0 0 2 0 0 2 1 2 1 1 2 1 2 1 1 2 0 0 0 0 1 2 0
0 0 0 1 2 1 2 1 2 1 2 1 2 2 1 2 1 2 1 2 1 2 0 0 1 2 0 0 1 2
1 2 2 0 0 1 2 2 1 2 1 2 2 1 2 1 2 2 1 2 1 2 1 2 1 2 2 1 2 2
1 2 0 0 1 2 2 1 2 1 2 2 1 2 1 2 1 2 2 1 2 0 0 1 2 1 2 2 1 2
1 2 2 1 2 2 1 2 1 2 2 1 2
U: 0 0 1 1|0 0 1 1|0 0|0 0|1|0 0|0 0 1 1|0 0 1 1|1|0 0 1 1|0
0 1 1|1|0 0|1|0 0|0 0|1|0 0|1|0 0|0 0|1|0 0 1 1|0 0 1 1|0 0
1 1|0 0 1 1|0 0|1|0 0 1 1|0 0 1 1|0 0 1 1|0 0 1 1|0 0|1|0 0
|1|0 0|1|0 0|1|0 0|1|1|0 0|1|0 0|1|0 0|1|0 0|1|0 0 1 1|0 0 1
1|0 0|1|0 0 1 1|0 0 1 1|0 0|1|0 0|1|1|0 0 1 1|0 0 1 1|0 0|1
|1|0 0|1|0 0|1|1|0 0| 1|0 0|1|1|0 0|1|0 0|1|0 0|1|0 0|1|1|0
0|1|1|0 0|1|0 0 1 1|0 0 1 1|0 0|1|1|0 0|1| 0 0|1|1|0 0|1|0
0|1|0 0|1|1|0 0|1|0 0 1 1|0 0 1 1|0 0|1|0 0|1|1|0 0|1|0 0|1
|1|0 0|1|1|0 0|1|0 0|1|1|0 0|1|
V: 0|0|1|1|0 0 1|1|0|0|0 0 1|0|0|0 0 1|1|0 0 1|1|1|0 0 1|1|0
0 1|1|1|0 0 1|0|0|0| 0|1|0 0 1|0|0|0|0|1|0 0 1|1|0 0 1|1|0
0 1|1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|1|0 0 1| 1|0 0 1|1|0 0 1|
0|0|1|0 0 1|0|0|1|0 0 1|1|0 0 1|0 0 1|0|0|1|0 0 1|0 0 1|1|0
0 1| 1|0 0 1|0 0 1|1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|1|0 0 1|1|
0 0 1|1|0 0 1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|0|0|1|0 0 1|0 0 1|
1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|1|0 0 1|1|0 0 1| 0 0 1|1|0 0 1
|0|0|1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|0 0
1|1|0 0 1|1|0 0 1|0 0 1|1|0 0 1|
real 0m0.200s
user 0m0.112s
sys 0m0.088s
- Senses
- Compiza/Xgl demo (check out the video)
- Does Company-Wide (Programming) Language "Standardization" Work?
- Python at Google
- 2006-02-08i've written an app to solve instances of the Post Correspondence Problem. i'm working on making it a lot better :-/
time ./a.out 100,0,1 1,100,00
#: 0 1 2
U: 100 0 1
V: 1 100 00
Holy shit, we found the answer!
It took 7 branches and is 13 symbols long. Here it is:
#: 0 2 0 0 2 1 1
U: 1 0 0|1|1 0 0|1 0 0|1|0|0|
V: 1|0 0|1|1|0 0|1 0 0|1 0 0|
real 0m0.025s
user 0m0.004s
sys 0m0.020s
- Here's an ugly way to reverse a string with the std libs:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int memsort_cb(const void *va, const void *vb) {
return ((size_t)va > (size_t)vb ? -1 : 1);
}
int main(void) {
char str[] = "reverse me!";
qsort(str, strlen(str), sizeof str[0], memsort_cb);
printf("str reversed: \"%s\"\n", str);
return 0;
}
- 2006-02-07This weekend I saw Bodies. The guy cut in half... that isn't a model.
- 2006-02-03ACM Queue - Hidden in Plain Sight - Improvements in the observability of software can help you diagnose your most crippling performance problems.
- Snopes: The Salami Technique
- PDP-11 Handbook
- Microsoft TCP/IP Host Name Resolution Order
- ReiserFS4
- GLib Reference Manual Yes, I'm going to start using GLib... why I took this long to start I don't know.
- 3D satellite tracking applet from NASA
- GFS: Google Filesystem - yeah, this is old, but interesting.
- Latent semantic analysis
- An Illustrated Guide to Split Windows in Irssi
- Sphere
- "IPv6 isn't just addressing..."
- OProfile
export DISPLAY=":0.0"
:g!/^Four/d
- Google: In China, Be Evil?
- An accessible doc summarizing IEEE 765 Floats
- Vegas Condos Go Cold
- Exploring the Linux Memory Model
- I am currently, and likely for a while will be, reading The Road To Reality by Roger Penrose
- good slashdot discussion about ssh tunnels
- Boost socket performance on Linux
- Bureau of Labor Unemployment Statistics
- GNU Scientific Library
- My latest and greatest project born out of my waning creative spirit and complete boredom is a stats reporting package for the online shooter Counter-Strike named OMGSTATS!. I've made a lot of progress from scratch in 4 weeks, but this is not the first nor the most comprehensive offering out there. it uses apache 2.0, php 4 and mysql 4.1 and includes some nice features, such as customizable and flexible reports, html-based hitboxes for weapons, automatic calculation of gaming sessions, a decent collection of weapon and map images to aid in identification, completely automated updating and a simple, clean interface that works in all major browsers (and even passes w3c validation for html 4.01 loose :-P)
- My friend's band: Fat City Scum
- 2006-01-14I use a Linksys WRT54G at home, which has a web config interface for, among other things, managing ports. The problem is that this stupid interface relies needlessly on some crappy javascript, and this crappy javascript does not work in any shell-based web browsers I could find (lynx, links, w3m). So I wrote a little config script of my own to log in and modify the port settings from the shell, using bash and cURL.
- Hypercube
- Microsoft's TrueSkill Ranking System
- Hyperbolic geometry
- Stellar Parallax
- Correctness by Construction: A Manifesto for High-Integrity Software
- Rounding Algorithms
- 2005-01-03 i've finished my previous set of books, and have lots more to read. which is fine, because i am completely uninspired and have nothing to do whatsoever.
The Difference Engine: Charles Babbage and the Quest to Build the First Computer is ½ nineteenth-century biography and ½ modern-day struggle to realize Babbage's design. this book took me longer to finish than usual... some of the details in the telling of Babbage's life drag on and i ended up skipping them. the modern half, the project by the Science Museum of London to construct the first full implementation of Babbage's Difference Engine No. 2 is quite interesting. this book does a good job of putting Mr. Babbage in his place. he designed a limited programmable computing machine... but is not the father of the modern computer. he was a very, very smart man... but not alone in mechanizing arithmetic in the nineteenth century. he visualized a working machine completely in his head... but failed to implement it.
- Threads Cannot Be Implemented As a Library
- softwarescrutiny.net
My Amazon Wishlist
- The Development of the C Language*
- Jingle Bells Reversed
- "Life is hilariously cruel." — Bender
- Blessed be His Noodly Appendage! Court kicks "Intelligent Design"'s ass. Ramen.
- Astrée
- inotify
- "I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." — Alan Kay
- "can not run test program while cross compiling" during emerge php: MySQL 4.1 Upgrade on Gentoo
- Microsoft transferred the GUI inside kernel in 1996 to improve performance. Microsoft is ripping the GUI out of kernel in 2005 to improve stability.
- Convex Hulls and the Graham Scan
- ire
- Quine-McKluskey Algorithm
- Unskilled and Unaware of It: How Difficulties in Recognizing One's Own Incompetence Lead to Inflated Self-Assessments
- DailyWTF - one table per row
- macro photography with a pringles can
- Xooglers
- teetotaling
-
<Spark> welcome to natural scientists
<Spark> they all wish they were computer scientists
<Spark> computer scientists, on the other hand, wish they were mathematicians
<Spark> and mathematicians wish they had a real job
A building in Melbourne, Victoria, Australia.
- doppelganger
- neat experiment with marble and sand
- Firefox steals lots of RAM and never gives it back, what gives?!
- Invasion of the Giant Killer Jellyfish
room_type 0 in your console (hit the ~ key) will disable the annoying Counter-Strike echo bug
- Please Do Not Throw Sausage Pizza Away
- Top Ten Web Design Mistakes
- If you live life like there's no tomorrow, there isn't.
- Stirling Engine
- USA's Historical Budget Data
- tr
|