Slashdot Mirror


Ubiquiti Announces RouterStation Challenge Winners

Riskable writes "Remember that $200,000 Contest For a Better Open-WRT Wireless Router GUI? Today Ubiquiti posted the winning entries to their support wiki. The grand prize was a tie between PyCI (written by yours truly) and NETSHe with OpenNET as the runner up. Source code and firmware images for each entry are available for download on their respective wiki pages. I'll be setting up a project page for PyCI (and l2sh) soon to make it a participatory open source product. Even if you don't have a RouterStation, or don't care about OpenWRT, there are numerous Python modules and tools inside of PyCI that could prove useful to other open source projects (e.g. iptables.py can read/interpret over 400 permutations of the iptables command). I'll also be checking the comments if anyone has any questions for me about PyCI or the contest in general. BTW: I'd like to thank all the commenters in the original article that insinuated that the technical requirements were impossible and/or that making a GUI to configure such complex things is a waste of time. I read every one and I wouldn't have made it such an obsession otherwise!"

20 of 87 comments (clear)

  1. Collaboration by Lorien_the_first_one · · Score: 2, Interesting

    Wow. Thanks for the story about that. I'm not a programmer, but I'm impressed with the work you and people like you do with open source projects.

    That was really refreshing to read.

    --
    The diversity and expression of human opinion is essential to human survival.
  2. Encouragement by R2.0 · · Score: 5, Funny

    "I'd like to thank all the commenters in the original article that insinuated that the technical requirements were impossible and/or that making a GUI to configure such complex things is a waste of time. I read every one and I wouldn't have made it such an obsession otherwise!""

    Ummm - you're welcome?

    --
    "As God is my witness, I thought turkeys could fly." A. Carlson
  3. What no HL mod? by spydabyte · · Score: 3, Funny

    Seriously, when will we realize that the best User Interface is a 3D environment individuals can navigate as easily as the world around us. Just make a quake, darkforces, or HL mod, pull in dynamic data that any web interface can provide, and have the guns change variables in a fun interactive way. Fine fine, use more recent games or engines, but you get my point?

    1. Re:What no HL mod? by Darkness404 · · Score: 3, Insightful

      ...Because that isn't the best UI? I find myself in real life wishing that it had an easy to use UI like a computer sometimes. Plus navigation in the real world is tiring and time consuming. For example in the "real world" you find things in a file cabinet, that is a lot harder than just CTRL+F and the filename. A basic GUI is much better than a "real world" environment. It also doesn't need a high-powered graphics card and an up to date CPU.

      --
      Taxation is legalized theft, no more, no less.
    2. Re:What no HL mod? by fuzzyfuzzyfungus · · Score: 4, Funny

      I hate to be the bearer of bad news; but trying to go through life, stuck in a computer UI, is no picnic.

    3. Re:What no HL mod? by zapakh · · Score: 2, Funny

      Seriously, when will we realize that the best User Interface is a 3D environment individuals can navigate as easily as the world around us. Just make a quake, darkforces, or HL mod, pull in dynamic data that any web interface can provide, and have the guns change variables in a fun interactive way. Fine fine, use more recent games or engines, but you get my point?

      Agreed - Once you've used a tool like psdoom to terminate a runaway browser process, there's no going back. It's only natural that the killing of processes should be represented as killing in the user interface! I'm just waiting for the VR helmet or at least some head tracking. Using a keyboard in the course of system administration is so... artificial.

    4. Re:What no HL mod? by TheNinjaroach · · Score: 2, Informative

      That was the first time I've been forced to watch through an ad on YouTube before seeing the content.

      Screw YouTube!!!

      --
      I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
  4. Screenshots? by __aailob1448 · · Score: 4, Funny

    Yo I'm really glad for you and imma let you finish, but your links have the least screenshots of all time, of all time!

    1. Re:Screenshots? by Riskable · · Score: 5, Informative

      Yeah, I'm not sure why Ubiquiti chose to post so few screenshots of my entry (and they're really small). I posted a bunch (full-size) in my flickr photo stream: http://www.flickr.com/photos/18175109@N00/tags/pyci/ (they're all tagged with "pyci").

      --
      -Riskable
      "Those who choose proprietary software will pay for their decision!"
  5. You KNOW It's "Open Source" by Philip+K+Dickhead · · Score: 4, Insightful

    When there are TWO "first place" winners! HA!

    I'm torn between exclaiming "Bravo!" and muttering "Typical..." :-)

    Now, we can't decide between Qt, GTK-2, EXT3 or 4 or JFS or, between Beryl or Compfusion or between...

    Any way, GOOD WORK LADS! Now, can you find a better way to inject this on most of the horrid little boxes? All that TFTP setup for 1.5 mb of binary, just one time? I can hardly bother!

    --
    "Speaking the Truth in times of universal deceit is a revolutionary act." -- George Orwell
    1. Re:You KNOW It's "Open Source" by Darkness404 · · Score: 3, Informative

      Well, in open source, if there are two good projects and you leave one out, chances are the developers who favored that will either fork it or simply stop coding for you. If its 50-50 you are risking over half your coders which on most OSS projects, they can't afford to do that.

      --
      Taxation is legalized theft, no more, no less.
  6. PyCI has a Quake-style console by Riskable · · Score: 4, Funny

    You know, my winning entry has a Quake-style drop-down console window. Hit the ESC key on any page in PyCI and it will bring down the terminal just like in Quake and Half-Life (in this case, running the ash shell). I would've used the tilda key but that might actually be used in an input element somewhere.

    I know your post was in jest but PyCI actually does include some elements from a first-person shooter!

    --
    -Riskable
    "Those who choose proprietary software will pay for their decision!"
  7. practical questions by bcrowell · · Score: 3, Interesting

    I'm currently running OpenWRT+Gargoyle on my linksys wrt54g. The reason I picked OpenWRT and Gargoyle was that at the time they seemed to be pretty much the only options if you wanted a fully free-as-in-speech OS and interface on your router. However, Gargoyle is pretty feature-poor.

    From a cursory look at the links, I'm still left with some questions. (1) Are these systems really usable and debugged at this point, or are they just proof-of-concept mockups, or early alphas or something? (2) I don't know what RouterStation is, or what Ubiquiti is. Are these general-purpose interfaces that could run on my linksys hardware, or are they specialized to certain hardware?

    1. Re:practical questions by mirix · · Score: 2, Interesting

      routerstation is a router board made by ubiquiti
      http://www.ubnt.com/products/rs.php

      Looks a fair bit more powerful than say, a wrt54G, so I'm doubting this will run on one..?

      --
      Sent from my PDP-11
    2. Re:practical questions by Riskable · · Score: 2

      The RouterStation is much more powerful than your typical WRT54g but PyCI doesn't require a super-fast processor or huge amounts of RAM. On a RouterStation with 64MB of RAM PyCI takes up about 27% according to top. This will be reduced significantly in the future as I optimize things (the contest didn't give me much time to do that). Also, I'm pondering porting the whole thing from CherryPy + Mako to the Tornado framework which would speed things up and reduce the memory footprint considerably.

      I don't think people will have any trouble at all running PyCI on a router with 32MB of RAM and 8MB of Flash ROM. Some pages might load a little slow but that shouldn't matter too much since you're not going to be configuring your router every day.

      --
      -Riskable
      "Those who choose proprietary software will pay for their decision!"
  8. It is the capabilities and innovation, silly by Riskable · · Score: 4, Informative

    I won't comment on the other entries since I haven't played around with them yet but I will say this: The primary advantage PyCI has over, say, LuCI, Tomato, DD-WRT, and X-WRT is that configuration screens in PyCI are infinitely configurable. When I say, "inifinitely configurable" I mean that all forms that can be dynamic are dynamic. For example, in Tomato and LuCI if you want to configure DNS you get two fields to enter that information (primary and secondary). In PyCI you can add as many as you want. There's examples of this all over the spectrum of configurable options.

    Also, PyCI supports many features that the existing interfaces do not which is sort of the whole point of the contest. As another example, PyCI doesn't just let you configure firewall rules. It lets you configure your firewall rules and then see exactly which iptables command will be executed as the result of your changes.

    My personal favorite unique feature of PyCI is the quake-style terminal. Even if PyCI doesn't have a configuration interface for something you can always just hit the ESC key to pull down a full terminal just as if you SSH'd into your router. It even works with full-screen apps like vi. I wrote a standalone version of it called Escape From The Web that can be downloaded here. It uses the Tornado framework instead of CherryPy (among some other differences) but from the user's perspective it is pretty much the same.

    There's a whole lot of stuff included with PyCI that isn't covered in detail in the wiki. I plan to put up a downloadable x86 Qemu image with PyCI pre-installed for people to play with soon.

    --
    -Riskable
    "Those who choose proprietary software will pay for their decision!"
  9. PyCI will work with *any* OpenWRT router by Riskable · · Score: 3, Informative

    You can actually run PyCI on any old Linux box with Python 2.6+ installed. A lot of the configuration screens won't be useful if it isn't OpenWRT though (pretty much all the network configuration screens won't work but Users and Groups configuration will work great =). So to answer your question: Yes, it'll run on any OpenWRT host with one caveat: You need enough space for the requirements.

    PyCI requires Python 2.6 (more than just python-mini) which itself requires libopenssl which is over a megabyte. I forget the exact sizes but your OpenWRT router will probably need 8MB of flash ROM at a bare minimum. You can get around this requirement by using external storage (PyCI doesn't care where it's installed) and loading Python + PyCI there.

    There's ipk files for PyCI, pyOpenSSL, and l2sh in the PyCI zip file on the wiki. The rule of thumb is this: If you can "opkg install python" with ~1MB free afterwards you can install and use PyCI.

    --
    -Riskable
    "Those who choose proprietary software will pay for their decision!"
  10. Hardware recommendations? by Enderandrew · · Score: 2, Interesting

    Can someone recommend some good hardware to run these on?

    Last time I bought a router, Linksys was doing their best to kill the WRT line it seemed by putting out new routers with less memory, and slower processors.

    I bought a D-Link DIR 655 because it has a fast processor, does 802.11n, and has gigabit ports. Is there any hardware out there that is comparable (or better) that I can throw Linux on?

    --
    http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
    1. Re:Hardware recommendations? by gad_zuki! · · Score: 2, Funny

      What? Linksys sells a special 54g for WRT. Im too lazy to get the full model number but it ends with L.

  11. Help me Steve Jobs! by eviltediz43 · · Score: 3, Funny

    WRT, PyCl, ALkJ what? All these words are too confusing. Isn't there something simpler, whiter, and more expensive that could fit in an envelope and do the same job? Like iOpen -WRT?