Blog

  • 3DR Tech Data and Review

    I owned an IRIS+ by 3DR from Jan this year until a couple months ago when I lost it in a large desolate area in South Africa. The search is still on. As a former IRIS+ owner that pushed my drone to the limits of what it can do, I thought I’d post my first impressions of the Solo by 3DR. This is targeted at an advanced audience.

    For some context, here’s video I shot with my IRIS+ earlier this year using a Hero 4 Black and the Tarot T-2D brushless gimbal.

    I got my first Solo this week. The unboxing experience is awesome – well done 3DR, very Applesque.

    The first person video via iPad is awesome. The way 3DR has designed the drone is interesting. With the IRIS+ you had a controller that spoke 2.4Ghz to the drone to control it. Then you had a separate radio that spoke 900Mhz also to another transceiver on the drone which is how you received telemetry. I actually loved this setup on the IRIS+ because the 900 Mhz radio had significantly further range than the 2.4ghz radio and it’s easy to buy high gain directional 900 mhz antennas or antenna amplifiers.

    The Solo has a single 2.4 Ghz radio onboard which talks to the controller. The controller acts as a Wifi base station. All devices (like your iPad or android phone) connect to the controller as a wifi base station. As soon as you connect what happens is the controller starts sending your device UDP packets to port 14550. If you have software running that’s listening at that port, the software receives the data from the controller and displays it in the user interface.

    So you can have an iPad, Android phone and a PC all connected to the controller at the same time receiving data from the drone.

    The Solo has two antennas that are in the legs, diagonally opposite each other. There is a third leg that has a tiny circuit board and I suspect this is a GPS antenna, but I’m unsure at this time.

    I disassembled my solo. A few tips on disassembly:

    • The shiny black hood does in fact come off. You need to unclip it from the underside. Look closely under it and you’ll see three tabs. If you push those out with a screwdriver you’ll get it off.
    • Unlike the IRIS+ the main board is harder to get out. You need to unclip most of the electronic plugs that are on the board to be able to see the underside. Then you can slide it out partially. I didn’t go further than that because it looked like I’d need to start unsoldering things to get it completely out of the aircraft.

    The two antennas in the legs are MIMO antennas and I haven’t verified this but I’m assuming they’re talking 801.22n to the drone. I suspect what 3DR have done is to have the drone connect to the controller as a base station like other devices have, but I haven’t confirmed this and have no data to support this theory. I used a wifi sniffer to give me the data that I have on how the controller speaks UDP to clients, but my wifi sniffer is only 802.11b/g and I’ve ordered a card that supports 802.11n but am waiting or it to arrive. Once I have that, I will be able to tell if the drone is speaking 802.11n to the controller or if it’s speaking a proprietary protocol.

    To use Mission Planner with the Solo, you need to connect to the controller’s wifi as a hotspot. Then launch Mission Planner and select ‘UDP’ as your connection type and hit ‘connect’. You should immediately download the config and start receiving telemetry.

    Good news: Even though 3DR have completely hidden away the ability for the Solo to fly a flight plan in full Auto mode, you can still do it. Here’s how:

    • Launch Mission Planner
    • Set up a flight plan with waypoints etc.
    • Upload it to the drone.
    • Arm the Solo.
    • Then go into ‘Flight Data’ and click the ‘Actions’ tab on the bottom left.
    • Select ‘Auto’ from the drop down list and click the ‘Set Mode’ button.
    • The Solo will immediately launch. This is different from the IRIS+ which required you to put the controller into ‘Auto’ and goose the throttle slightly to trigger the Auto program.

    It’s funny watching the iPad app show the flight mode switch to “Autonomous” when it doesn’t actually list it as a flight mode, even using the advanced options.

    So how about performance. Here’s how you can turn the Solo into a mean machine when flying autonomous programs. If the above didn’t void your warranty, this definitely will.

    Go into Config/Tuning in Mission Planner and you can change the following if you dare:

    • Do a search for ‘speed’ and you’ll find many things you’ll enjoy playing with.
    • I changed Waypoint Horizontal Speed Target to 2000 or 20m/s. Verified the Solo can handle this but didn’t try a program that had enough distance to let it fully reach that speed along a track. Note that with the IRIS+ I ran into an issue where using spline waypoints the aircraft would lose altitude if I set the horizontal speed too high because it appeared to give the horizontal speed precedence over maintaining altitude. So careful of setting this high on the Solo. Not sure if the same issue exists.
    • Waypoint Descent Speed. Changed this to 300cm/s or 3m/s. Verified the Solo can handle this and flies fine. However note: Changing your descent speed with any drone is very dangerous because the aircraft is descending into it’s own prop-wash (turbulence created by the propellors). If you make this too high the aircraft can get very unstable and flip or crash. I had my IRIS+ hit snow very hard one night when I set this too high.
    • Waypoint Climb Speed Target. Definitely my favorite if you are doing an auto program and want the aircraft to get to altitude as fast as possible. The max I’ve tried this with the Solo is 1000cm/s or 10 meters per second. It’s awesome – absolutely rockets into the sky.

    Once you’ve tweaked a few of these settings you’re probably still wondering why your Solo is a little sluggish. Here’s how you make her zip:

    • Again on the Config/Tuning Standard Params page, do a search for ‘accel’
    • Waypoint Acceleration. I’ve set this to 500 (default for the Solo is 100)  which is the max and tested the Solo doing laps and it handles it fine without crashing.
    • Waypoint Vertical Acceleration. I’ve tested this at 200 (default is 100) and it works great.

    So what do I think of the Solo by 3DR? The one issue I’ve found is that GPS signal around my house is a little glitchy. The Solo reacts to this by accelerating hard in a certain direction when I have it in beginner “Fly” mode which is what every newbie will use when they fly for the first time. This is probably going to be a disaster. I had to use every ounce of my skill as a drone pilot to not crash the Solo when it did this. It has so far done this 3 times to me over 2 days of flying. When it happened the aircraft was definitely going to crash into an obstacle and the only way to avoid it was to climb and give full opposite joystick – so unless you do that when this happens to you, you’re going to be wearing a frowny first-time drone pilot face as you send your smashed Solo back to 3DR and wait weeks or more for a replacement. Very worrying. I suspect 3DR will fix this by cross-referencing the data from the gyros with what the GPS is claiming and maybe not accelerate so hard to try to correct any GPS position errors.

    I also had a landing where the drone ended up in a rhythmic bounce with the engines racing and I couldn’t shut them down even though I had full negative throttle. I just held it down, thankfully it didn’t flip and eventually go the idea.

    I’m unsure how the 2.4 Ghz radio is going to work out. I already have a set of dual high gain antennas I bought from http://fpvlr.com/ (Thanks Tony for the awesome fast shipping) and haven’t tried them out yet, but they look solid. I think if I can get an antenna tracker working with the Solo with dual high gain antennas, it’s probably feasible to get telemetry, control and video over 3+ miles which is going to be amazing.

    The drone itself is a nice improvement. Design is really polished, the battery life is now 20 minutes with a full payload and it seems to fly better than the IRIS+ but I’d like to check how it flies with a Gimbal.

    Speaking of Gimbals, they don’t actually exist. 3DR is still figuring out how to get them manufactured and posted this blog entry 3 days ago saying the first Gimbals for the Solo will be coming off the line at the end of July. (!!!) Wow, guys, taking just-in-time shipping to a whole new level of I’m-not-sure-what-ness.

    So don’t expect to be playing with the Solo Gimbal any time soon.

    Bottom line: I’m a huge fan of 3D Robotics, even though this post was written a little tongue in cheek. I think the Solo rocks but I’d say this is a Beta release based on the GPS glitching that I’ve seen and the landing issue. For guys like me who love voiding warranties, it’s fun to get early access to a platform like this. I can’t wait to play with the Python Dronekit API and I’m enjoying pushing the aircraft to it’s limits and playing with my packet sniffer to see what’s happening under the hood. However I wouldn’t recommend the platform for newbies until say October/November this year when the Gimbal has been out a few months, there have been a few software updates and the platform has had a chance to breathe.

  • Failure Is Not An Option

    If you raise money and fail, you need to consider the opportunity cost of another entrepreneur not having had access to the investment capital you lost. If you fail, you need to be sad about your failure and also be sad about the opportunity cost of your failure.

    But it’s “risk capital” you say – money that investment funds allocated to very high-risk/high-return investments. So the thinking is that it’s OK for that capital to go away because it’s expected to either succeed big and likely to fail. But what about the 1 or 10 or 50 other businesses that lost access to that capital once it was invested? Could one of them have been the next Google?

  • Try Buying your Hardware

    We took a lot of heat from the startup community when we bought $40,000 of Dell servers, a switch and a KVM and racked them ourselves in 2008. Seriously, Kerry (my wife and co-founder) and I hand-racked about 10 Dell 2950’s and a couple of 1950’s in the rack we leased at our data center. We didn’t realize the DC team could rack them for us and were so excited when the servers arrived we just dove right in.

    Do you have any idea how much a DELL 2950 loaded with disks weighs? They’re heavy.

    At that time the “cloud” was all the rage. Amazon services were really spinning up, Linode and SliceHost were the new ‘it’ companies, and we were derided as idiots for actually buying physical hardware: Ew!

    Well turns out our business scaled very quickly and in a few short months we were pushing well over 100 megabits of bandwidth average. We were paying around $2,500 a month for that which included power to the rack, a team supporting our hardware 24/7/365 and that included the bandwidth and 5 very high quality upstream connections. We’d discovered the magic of 95th percentile billing. Most of our peers were paying by the terrabyte and getting absolutely screwed. Our business would never have survived if we didn’t use colocation.

    Today we’re busy decomissioning our old Dell 1950’s and 2950’s and replacing them with amazing new Dell R630’s. Back then we were paying about $3500 per server. I just bought 4 Dell R630’s at $9250 each out the door. We’re happy to spend that kind of cash because we know these machines will pay for themselves a hundred times over (or more) by the time we’re done with them. We have a little inside joke: “Good servers go to small business heaven. Bad servers end up working for us.” We literally put our servers through hell by running them at very high CPU and IO loads. To date we haven’t had a single failure besides hard drives and redundant power supplies, all of which are hot-swappable and no big deal. No memory, chassis or controller issues. (We use PERC hardware RAID 1 or 10 usually)

    So I guess I’d like to say a big Kudos to Dell for producing some kick-ass enterprise class hardware that could withstand the worst kinds of loads we could come up with. And seriously: If you’re a startup and can afford it, consider making a capital investment in your own hardware and using colocation rather than abstracting away the problem and paying more – and in some cases, a hell of a lot more.

    Besides: What could be more fun that spending your Saturday night in the data center.

  • Installing Ubuntu 14.10 on a Dell R630 with PERC H730 hardware RAID 10

    If you arrived here, you’re probably spending your weekend doing this too, so perhaps I can save some of your weekend for you. Here’s how I did it. FYI, I’m using a PERC H730 hardware RAID controller with a 1.1TB virtual disk made up of 8 physical disks in RAID10 config. As the title says, this is a fresh DELL R630 and it has single processor and 128G of memory. See my notes below about using a 100g boot partition and creating a larger partition once you have the system up and running with grub installed in the MBR.

    • Switch the BIOS boot mode from UEFI to BIOS.
    • If you’re booting from a USB thumb drive, set that to your first boot device.
    • Boot and hit CTRL-R to go into your raid controllers bios and blow away the virtual disk. Recreate a new identical one. You’re doing this to get rid of the GPT partition.
    • Boot into ubuntu 14.10 server 64 bit.
    • Go through installation and make sure you install openssh server because you won’t be able to access the console when you first boot.
    • Also make sure that when you partition your disk, you don’t create one huge partition larger than a terabyte. Instead, you probably want to create a boot partition and then a larger partition. I use 100G boot partition and 1TB big partition which I create once I have the system up and running. When I tried to create a 1.1TB partition it has trouble installing grub into the MBR. Using UEFI or a GPT partition table might fix this but I haven’t gone down that rabbit hole and don’t really want to.
    • The grub installation onto the MBR will fail. This is because if you’re installing from thumb USB, ubuntu switches the /dev/sda and /dev/sdb devices and tries to install grub onto your thumb drive instead of your hard drive. To fix this hit CTRL-ALT-F2 open a console, then run the following:
    • chroot /target
    • grub-install /dev/sdb
    • update-grub
    • Then hit CTRL-ALT-F1 and go back to your installation.
    • Continue without installing a boot loader (because that’s what you just did).
    • Once done, when you reboot, go back into the bios and disable booting from your thumb drive (or just unplug it if you’re not doing this remotely like I am).
    • Boot into linux, except that all you’ll see is a blank screen at this point.
    • SSH into the server.
    • Edit /etc/default/grub
    • Change the value of GRUB_CMDLINE_LINUX_DEFAULT to be “vga=normal nofb nomodeset video=vesafb:off i915.modeset=0”.
    • Run update-grub2
    • Reboot and your console should now work and also won’t freeze up.

    Congrats, I just saved you a few hours. Go enjoy them.

  • The FAA needs to get their hands dirty to enable UAV innovation

    In the 1970’s and much of the 80’s, passengers on commercial aircraft would occasionally experience the joy of the ‘holding pattern’. Having their plane stacked with other planes circling in a spiral due to a delay at a destination airport. Planes would circle sometimes for hours, with priority given to those about to run out of fuel.

    Then in 1981 the FAA used a ground delay program (GDP) for the first time during an air traffic controllers strike. The advantage of keeping airplanes on the ground at their departure airport was immediately obvious: passengers are just as unhappy, but they’re safer and the aircraft isn’t burning fuel at 161 lbs per minute (or 73kg per minute for the 767) in a holding pattern. Today the ground delay program is run by the  Air Traffic Control System Command Center, in Warrenton, Virginia which coordinates commercial flights around the USA and Canada and implements a GDP for destination airports if their arrival rate drops below a threshold.

    The FAA is catching a lot of heat for their delay in implementing UAV (or drone) legislation. The drone pilot part of me sympathizes with the public and I think what is particularly frustrating is that a small handful of commercial operators have actually been granted licenses to operate giving them an unfair advantage over other operators. The article in the Denver Post today probably stung a bit among unlicensed operators when one of the already-licensed operators described the FAA’s pace as “about where it should be”. Sure, it works for them.

    But the private pilot part of me – and the aviation history enthusiast part of me is sympathetic towards the FAA’s plight. Make no mistake, I think we should bringing as much public pressure to bear on them as we can. In the legislative environment we’ve inherited that’s the only way anything will get done. But this country has a long and storied history in traditional aviation and we have achieved a remarkable improvement in safety by creating well engineered solutions for specific problems. A glance at the chart below showing safety from the 70’s until 2012 illustrates that. [Source: The Economist on air safety and MH370]

    20140315_gdc500_0

     

    The FAA is not asleep at the switch – they are continuing to innovate and improve safety and efficiency with the rollout of the Next Generation Air Transport System which started in 2012 and is due to complete in 2025. Part of this rollout was support for ADS-B which is just about complete. This remarkable system gives everyone including hobby pilots like you and I the ability to buy an $800 transceiver, attach it to our iPAD and get real-time traffic and weather data as we fly anywhere in the USA while sharing our own position with other pilots and air traffic control. Previously you had to buy expensive avionics systems and a subscription to a commercial provider’s satellite feed.

    Unfortunately we are stuck, while we wait for formal FAA legislation, using an FAA advisory circular (91-57) that applies to radio control model aircraft as our legislative guide. It says, don’t fly near populated areas, don’t operate near spectators until you’re sure your aircraft works, don’t fly above 400ft, don’t fly near an airport without notifying them, give way to full scale aircraft, ask the FAA for help if you need it.

    Comparing a model aircraft to a drone is like comparing the Wright Flyer to a 767. One has wings and an engine. The other has GPS, avionics, autopilot, gyros, accelerometers, real-time ground station connectivity, real-time logging for later analysis and flight modes ranging from fully-autonomous to the pilot having an advisory role with the computer taking over when needed – to fully manual. (I am comparing most newer commercial long range aircraft with the IRIS+ by 3DRobotics for $750).

    Most drone innovators are very excited by the prospect of being able to fly their aircraft out of sight autonomously. Whether it’s Amazon wanting to do package delivery, a survey company wanting to offer services to farmers or me wanting to deliver beer to my friend a few blocks away. Autonomous flight is the most useful aspect of drones and they are very very good at it. I can go outside right now and get my IRIS+ to fly 3 miles away at 390 feet, descend to 60 feet, point the camera on gimbal at my friend’s house, circle the house in a smooth spline navigation path as it films the home, ascend back to 390 and return to me and I can get telemetry via an excellent 900 mhz transceiver from the drone the whole way and even take over manual control if I feel the need. But that’s not allowed because the FAA won’t let us fly out of sight until they make laws which may simply formalize the fact that hobby drones can’t fly out of sight.

    The USA is filled with tech innovators that are salivating at the prospect of trying out new things with drones – things that may drastically improve our quality of life and safety. I’m reminded of the horrific King5 news chopper crash a few years ago in Seattle which killed 2 and burned a third victim. Today that job can be done by a drone costing under $2000 – filmed in 4K video, gimbal stabilized with real-time first person view as film is being shot. With an amateur radio FCC license the operator can legally boost the drone telemetry and video signal from 0.2 watts to 10 watts with a high gain antenna and increase range to the point where battery life is the only issue.

    But autonomous flight innovation of that kind is banned and the only laws we have to guide us right now are an advisory circular relating to model aircraft and public statements by the FAA. Some operators are saying “to hell with it, we’re flying” as is the case with Texas EquuSearch. The search and rescue operator was issued a warning by the FAA, they then turned around and sued the FAA and a federal court threw out the case saying that the email the FAA sent EquuSearch did “not represent the consummation of the agency’s decision making process, nor did it give rise to any legal consequences.”. EquuSearch have interpreted this as the FAA having no jurisdiction and so they have decided to continue flying.

    In my view the FAA must be very careful to not treat drones like manned aircraft because they risk band-aiding the situation and crippling innovation. They need to look at the modern air space systems and innovations that have worked there and then assess drones as unique and completely different entities that happen to exist within their jurisdiction. I think giving everyone from hobbyists to commercial and government operators the ability to perform out-of-sight autonomous flights is a very important and necessary goal if they are to be an enabler of innovation rather than being a crippling force that ensures we aren’t competitive in this new arena of aerospace.

    It is essential that this country (the USA) maintains its dominance in aerospace and we worked incredibly hard to get to where we are today – from the Wright Flyer to breaking the sound barrier, to getting our asses kicked by the Soviets when they made it to space first, but we regained the lead by getting to the Moon first. Then on to Stealth technology and military UAV’s. We’ve managed to stay out in front. To do this we need to enable the private sector to conduct research into autonomous flight and the private sector includes individuals and small groups of entrepreneurs. We need to enable them and we need to do it as fast as possible.

    To allow autonomous flight I would propose a system similar to DUATS which pilots today use to file flight plans. The FAA should create a system whereby drone operators at defined levels of competence and commerciality are able to file a flight plan before flight. The plan would include waypoints with latitude, longitude and altitude. The flight plan would be filed an hour before flight and define a window for the flight. It would also be approved on the spot or rejected due to a conflict with another plan, temporary flight restrictions (TFR’s) or an airspace conflict.

    I would suggest that a system like this could be used for autonomous flights under 400 ft in open areas. With additional licensing operators should be able to enter our national airspace system which starts at 500ft and this may include additional equipment like an ADS-B transceiver. And with further licensing, as with the current pilot requirement of an instrument rating, pilots may be able to complete autonomous flights above 18,000 feet.

    To truly enable innovation in autonomous flight, the FAA can’t simply bandaid the existing system. They need to be an enabler and create new products and services to support drone operators and ensure that, as we have with manned aircraft systems, innovators are able to improve safety, efficiency and quality of life with unmanned aircraft.

  • OS X 10.10 Yosemite WiFi Problems Analyzed with Wireshark

    I never realized how often I google and how much I rely on sub-second response times until I upgraded my Macbook Pro to OS X Yosemite. After muddling through issues like upgrading VMWare and a few other items and fixing my terminal emulation, I couldn’t figure out why I was in such a bad mood.

    Then it hit me. My Google searches while I had been doing that had been slow. I would type something in and Google’s search results page either would not appear for about 3 to 6 seconds, or it would half-appear and then the search results would only show up after 3 to 6 seconds.

    There is so much garbage SEO bait out there about “what to do about Yosemite wifi problems” so I’m not going to bore you with the details of my investigation and I’m just going to cut straight to the chase:

    I put a network analyzer on my wifi. It turns out that the problem appears to be duplicate packets arriving on the WiFi network card. I switched to Ethernet via the Thunderbolt adapter and the problems instantly went away.

    Here’s what it looks like in Wireshark….

    Screen Shot 2014-11-13 at 2.21.31 PM

    What happens is the network card transmits an acknowledgement. Then there’s a 2.7 second freeze where nothing happens. And then a few packets arrive followed by a flood of duplicate packets.

    The duplicates are both duplicate application data packets along with duplicate TCP acknowledgements.

    Scrolling further down you can see the duplicates increase and Wireshark starts labeling them “TCP Spurious Retransmission”, implying an issue with a network interface on the network.

    Screen Shot 2014-11-13 at 2.23.50 PM

    Another test shows exactly the same thing. A 3.1 second delay where I’ve highlighted in blue and then a few good packets and the duplicates start.

    Screen Shot 2014-11-13 at 2.30.26 PM

    And then the frequency increases…

    Screen Shot 2014-11-13 at 2.31.38 PM

    Deleting and re-adding your wifi network or network card device does not fix this. Neither does some of the other suggestions out there like turning off bluetooth, joining a 2.4 Ghz network instead of 5Ghz, etc…etc..

    To me this seems to be a driver issue where the network card freezes and when it comes out of the freeze it’s sending the OS large numbers of duplicate packets. It’s curious that the freeze is around 3 seconds each time.

    This test was done on a: MacBook Pro (Retina, 15-inch, Early 2013). The only other software running while this test was being done was Chrome, Excel, X11, Wireshark, Terminal and Keyboard Maestro (a keyboard macro utility).

    Writing this post after the test was done on ethernet and I can feel my sanity already returning.

    Apple please fix. Thanks.

     

  • Startups that Move the Needle

    Something that I’m becoming more cognizant of and that I see in my friends as we all get a little older is the question about whether what we’re doing is actually moving the needle for the rest of humanity. If it’s making positive change by enabling our species or improving quality of life for others.

    My business is cybersecurity and the biggest positive impact I see is when we help mom and pop or small businesses keep their websites and businesses secure. But I question whether we can do more. I think Elon’s SpaceX and Tesla moves things forward for our species as a whole.

    An old friend arrived in Seattle this weekend. He has a really exciting startup based in Europe and is one of the most persuasive and energetic guys I know. It’s his second or third time in Seattle, ever – he doesn’t even live in this country – and  we show up at the Black Keys concert, sold out show on Saturday night at Key Arena, he walks up to security and talks us into a sold out show without any bribes or cash changing hands.

    So in between rocking out to Black Keys and then hitting a Bollywood party in Freemont, I learned about what he’s been doing for the last few years.

    Oradian creates software for banks in developing countries to do what banks do. Most of their target market is either using paper or using antiquated systems that are cobbled together and run on an old PC or laptop. Oradian provides a cloud based core banking system that gives banks a way to drop in an IT solution and get up and running fast.

    My first thought was skepticism that a bank in a developing country would have access to the Net. But Antonio has been on the ground selling directly into these organizations and markets for a few years (he was previously in micro-finance) and because of the heavy reliance on cellphones in these markets, the Internet is more reliable than the power grid.

    They’re currently raising series A in the USA and Europe and it’s interesting hearing his perspective and seeing other companies that are raising in Seattle and the Valley. I think there are other exciting businesses out there that are moving things forward, but there are so many that are spending precious energy on attracting a few more clicks or a few more eyeballs and I’m not sure how they help make the World a better place.

    It’s gotten me thinking about how we measure success and gauge whether something is a great idea or not. I’m not sure I’ve ever seen a startup appear on the West Coast that has a for-profit model that has the potential to make positive change in developing countries. I grew up in South Africa (as did Antonio, Oradian’s CEO) and we’ve seen and continue to see first hand how important it is to create a strong middle class in developing countries that is empowered with commercial opportunities and the services that surround them in the form of banking.

    I’d like to see more smart people thinking about this space and if Oradian is anything to go by, my sense is that there are opportunities in the developing World that can be both profitable for investors and make significant positive change.

    Edit: Found this video which gives you a better idea of what Oradian does…

  • 4th of July Post

    Posted this on Facebook today and felt like cross posting it here.

    I feel obliged to post this after seen all the posts in my timeline connecting patriotism with the US military. There are ways to express love for your country without expressing a love for war or the machine that wages war.

    Omitting an expression of support for your country’s military is not unpatriotic. Neither is criticizing it. The last three decades have seen the US at war in Libya, Grenada, Panama, Iraq, Somalia, Bosnia, Haiti, Kosovo, Afghanistan, Iraq (again) and Libya (again). On what’s left of this independence day weekend, consider that citizens of other countries are patriotic too. Try to remember that we’re part of a global whole and every citizen of Earth has fears, hopes and dreams and they too are proud of their history and would prefer that it remain intact.

    Consider that the idea that we keep American families working on peaceful private enterprise on US soil instead of dividing them through military deployment is also a patriotic goal.

    Remember that a quarter of world military spending is what we spend on our own war machine.

    There will always be evil in the world and fighting evil will always create jobs and new wealth and those jobs and that wealth are missed when they’re gone. But at what cost do we go looking for new wars? At what cost do we glorify the military industrial complex as part of what makes us American?

    On what remains of this fourth of July weekend, remember that old maxim: That you should treat others the way you want to be treated. And lets instead celebrate our open culture, our freedom of speech and our freedom to choose who governs us, whether they wage war and how they treat others on our behalf.

  • Liars and Geniuses – Thoughts on Live Jazz

    There’s something about Jazz live performance that has bothers me and I think it’s the audience. It’s the beatific smiles on many of the faces that last through the entire performance – smiles that remind me of a congregation in a church that know that it’s the wanting to believe that matters most, not whether it’s true.

    It’s the guy in the front row with his index finger at shoulder height pointed at the roof bouncing it back and forth to a rhythm all his own.

    Jazz performance appreciation – to truly understand live jazz greatness when you see it in the flesh – is the epitome of musical achievement. To understand how a group of musicians anticipate each other’s switching from one complex time signature to another, move fluidly and rapidly between keys and throw in a little used mode to add some humor or a chromatic run which morphs into another key – or to understand when the musicians are reverting to a jazz standard or improvising something new and truly great – to understand all of this, you have to be an accomplished musician. Someone who has spent thousands of hours either studying or performing or listening.

    I think those that claim live jazz appreciation are either liars or geniuses.

    I listen to Rock.

  • Where the term "Zero Day" comes from

    After seeing a FOIA request earlier today that someone created asking for FBI training documents that teach staff how to understand/communicate using hacker leet-speak, I was reminded about something I’ve wanted to put in virtual ink for a while.

    Leet speak or 133+ sp34k or hacker speak did not actually originate with hackers. Neither did the term “zero day”. Back in the late 80’s and early 90’s the Internet was but a pup and most of us communicated via BBS – a dialup modem (often a bank of modems on popular BBS’s) attached to an individual’s PC that members dialed into to connect. [We also used something called Prestel or Beltel which was essentially a big government run BBS]

    Phone calls were expensive in those days so if you wanted to connect to BBS’s far away – and at the time I lived in South Africa and the best BBS’s were in the USA – then you needed to become a phone phreak. So I’d fire up a piece of DOS software called Bluebeep (created by the venerable Onkel Dietelmeyer), hold a headphone to a phone mouthpiece, generate CCITT5 tones and take control of international phone trunks to get free overseas phone calls. [I’d also hack into the Post Office X.25 network to get access to an overseas modem (a DTE) which I could then control with AT commands. X.25 was a precursor to the TCP/IP Internet]

    Then once you’re connected to the BBS you could upload, download, send email via fidonet and talk to anyone else online. My favorite hacker BBS was in Orange County, Californa called Digital Decay and run by a chap called Arclight. Little did I know that my future wife was also in Orange County busy being a college kid.

    At the time underground BBS’s were divided into two types: Those that were hacking and phreaking related and those run by the warez crowd. The hacker/phreak BBS’s would distribute exploits, tools like Bluebeep to hack the phone lines, copies of phrack and so on.

    The warez crowd would distribute pirated software and they took their job very seriously. 133+ speak originated with the warez crowd and the hacking/phreaking crowd hated it.

    The term Zero Day also originated in the warez scene. On warez BBS’s software would be divided into zero day, 1 to 7 day, 8 to 14 day and so on with the lower ‘day’ being the most elite and hardest to come by. The number of ‘days’ was the days since the software was released to the public and Zero Day was software that was not commercially released yet. So someone had hacked into the company servers to grab their commercial software before they released it.

    The relationship between the warez crowd and the hacking/phreaking scene was that the hackers would invent the means to get zero day warez (exploits used to hack into a company), the phreaks invented and continually reinvented the means for ‘warez couriers’ distribute the warez among BBS’s (ways to circumvent trunk seize tone filters the phone companies were using for example). Hackers and phreaks looked down on the warez crowd – even though we’d get software from them – which was a little hypocritical.

    This was all around 25 years ago. At some point ‘zero day’ became something applied to vulnerabilities and the number of days a vendor has had to fix them. And at some point ‘133t sp34k’ became something hackers use. I have no idea why or when this transition occurred. 133t sp34k used to be scorned by hackers as something warez ‘pups’ did.

    Times change. Like hashtags originating on Twitter where they indicated subject, which originated on IRC where they were channels – and which syntactically may have been inspired by C preprocessor directives.

    Edit: Very cool discussion thread on HN about this – including some other old-schoolers checking in.