• Content count

  • Joined

  • Last visited

Community Reputation

993 Good

About Monder

  • Rank
  1. Domain Name Ownership sanity check

    Is Person A the actual registered owner of the domain (Check with a WHOIS lookup). I've heard some hosting companies that offer domains actually register it under their own name and then point it at your site, if this is the case then things get a lot more tricky. If it's under your own name then they have to let you transfer.
  2. Building a bespoke PC input device

    Quote:but both the replies so far, these are advocating a bespoke USB 'protocol', albeit a simple one? I was saying you could use a serial over USB protocol. Here the USB drivers have been written for you, and you would have to write a protocol on top of that that runs over serial. However this would all be handled by your app and would be very simple. It could be as simple as each different input having a state which you can encode as a byte, reserve 255 or 0 as a special value. Then the hardware would simply send 255[state1][state2][state3]...[staten]255[state1][state2][state3]... and so on continuously. Accessing a serial port is easy, FTDI who make usb <-> serial chips provide drivers for windows (and other OSes). You could go the pretending to be a gamepad route, but frankly I imagine a custom protocol over a usb serial port is an easier option. Plus gamepads may have annoying limits on how many buttons and range of analogue motion that could restrict you.
  3. Building a bespoke PC input device

    It depends upon your precise requirements, but an Arduino board may do what you need. They've got an AVR microcontroller on board which can be programmed in C. There's a range of boards with different numbers of digital and analogue I/O pins. Communication is done via serial over USB, though it appears that latest revision of the boards have a seperate AVR microcontroller which deal with this serial <-> USB connection and you can reprogram them if you don't want to use USB serial as a communication mechanism. However I would recommend using serial as it's very easy to use, both on a hardware and software front, it's only unsuitable if you require lots of high speed data.
  4. Handheld Console Design

    What are your main aims here, you say you're doing this for the experience but what experience? If you're interested more in the software side of things then picking up an existing piece of hardware is probably the best plan. Someone's already mentioned the GP2X, another option could be a BeagleBoard. They're reasonably small so you could probably come up with a sensible case. If you're interested in the hardware design then learning about FPGAs could be a good way to go. You could use an ARM CPU coupled with an FPGA for doing graphics/sound. However beware that building your own hardware will be a long and difficult process if you haven't got any experience in that area. It's also not cheap, prototyping (i.e. a few copies) runs of PCBs are expensive, and you'll need tools like a good soldering iron, oscilloscope/logic analyzer and a JTAG programmer. FPGA parts and ARM chips which might be rather cheap for a company to buy 10'000 of can be surprisingly expensive when you only want one. Really if you want to play around with the hardware I would strongly recommend starting simple. Look at things like the Fuzebox or the variety of things XGameStation offers. On the FPGA side of things the Terasic range of boards could be useful (The DE2-115 looks rather nice). There's lot of stuff on the low-end that's pretty cheap and will be a lot easier to get started with, once you've got some experience you will then be a lot better placed to build something with more power. [Edited by - Monder on November 1, 2010 5:04:16 AM]
  5. You could also look into flaming cocktails.
  6. Quote:The sucky thing about this is that no, the cocktails aren't going to get much testing beforehand (if any) In that case definitely stick with the tried and tested ones. It's pretty easy to come up with a mediocre cocktail (Shaking with ice and adding sugar syrup makes most things taste at least alright), if you use some of the classics off the IBA list you can't go too far wrong. As for making everything look cool, that's just all presentation, doesn't really matter what's in the drinks [grin] If you want interesting colours lookup 'Layered Cocktails' on Google (Though you will suffer from TMI, maybe just look at all the IBA cocktail pictures on wikipedia and decide which ones you think look the best).
  7. Is this a party that happens to have cocktails, or a party where interesting and original cocktails are being billed as the main event? In either case take a look at the IBA Official Cocktail list for some inspiration. If you're needing something new and original then take an old classic and play around with it (Do make sure anything new you create gets a thorough taste testing). Do you have experienced bar tenders? If not I'd make sure whoever is behind the bar gets plenty of practice before the event. I'd second Evil Steve's suggestion of a long island, beware though they are highly alcoholic (Though if mixed correctly don't taste of it at all). I also rather like Mojitos which are pretty easy to modify (Long island is less easy to successfully modify I imagine). The Tequila Sunrise would be another good one if you're looking for something colourful.
  8. [web] Odd Javascript Bug

    Turns out it was an extra '\r' character, something I really should have been able to work out on my own [grin], thanks smr. Konfusius: Thanks for the tips, out of interest why do you think the typeof method is better than my current method of checking for undefined (Ignoring for now that I should be using the in operator for this anyway)? Is it because undefined isn't actually a keyword but javascript interprets it as a variable that I haven't defined and thus has the type undefined so appears to act like an 'undefined' keyword would in this instance should it exist?
  9. Hi, I have the following snippet of javascript code which is acting in a rather odd way var firstNewLine = content.indexOf('\n'); if(firstNewLine == -1) { return {description : content}; } var typeString = content.substring(0, firstNewLine); typeString = typeString.toLowerCase() //other stuff if(imageDict[typeString] == undefined) { //other stuff } In a particular run typeString ends up getting set to "bar" when I then index imageDict using this I get undefined. This is odd as when using the Chrome debugger if I place a breakpoint on the second if statement it shows that imageDict does indeed have a defined entry for "bar". If I put imageDict["bar"] into the watch expressions then I get the result I expect (A path to an image file) however if I add a watch expression for imageDict[typeString] I get undefined. So when the code actually runs the expression in the second if statement evaluates to true. So it appears I have two strings "bar" and "bar" which are visually identical in their representation in the chrome debugger but javascript considers different. Can anyone shed any light on what might be happening? Note that this code works fine in other instances, it's just this one particular case.
  10. A question on design philosophy.

    Quote:It's true that the user doesn't care about the code, but as Telastyn points out, it's more a matter of extensibility than functionality. Going back to the tilemap example, I'll have functions for parsing tile information from a file and I'll start to think, "what if I want to implement a map buider?" I'll start to wonder if I should make new classes for x, or abstract y into a separate procedure. Perhaps I'm just getting a little ahead of myself. I do a similar thing when writing code, I always think about possible ways I might use it in the future and then try and get the design to work for that as well as the thing I actually want it for now, this normally leads to over engineering remember YAGNI (You ain't gonna need it). This doesn't mean you should just plow in and write precisely what you need this second with no concern for the future but when considering problems your design might have in the future think of how immediate those problems are. Is it going to trip you up tomorrow, next week, next month? Or is it potentially going to trip you up in a year when you might do something? There's only so far ahead you can accurately predict how you're actually going to use a given piece of code anyway. Design for the now with a mind for the near future (How near depends upon what you're writing), if it doesn't do quite what you want later on refactor.
  11. why B/W heightmaps (not color)

    256 levels is generally enough. While you could extend it to more (e.g. 16, 24, 32 etc bits worth) you'd loose the ability to easily edit them in an image editor as black and white images. If you do want more than 256 levels you could use an editor that supports 16-bit greyscale or build your own height map editor.
  12. A Slight Malfunction (story with piktarz)

    A friend of mine recently told me about a time someone he knew left a compressed air cylinder for diving in the boot of his car with similar results, only this being a cylinder for diving went off with significantly more force. He returned to car to find the back end completely demolished and various bits of his car scattered around.
  13. ZUI (zoomable user interface)

    This seems like the kind of interface that could work very nicely on a tablet given appropriate gestures for fast zooming (pinch zooming your way from a piece of a file to the top level would get irritating quickly).
  14. Graphics Cards for GNU/Linux

    Quote:One thing I've always been curious about is the push to make only software, not hardware 'free and open source'. Why not hardware too ? Software is inherently more hackable (At least currently, who knows what the future might hold [grin]), if you have a computer and an internet connection you can get hold of all of the tools and information you need to build whatever you want. If I'm interested in OS development I can easily download the Linux kernel and play around with it to my heart's content. If I'm interested in a proprietary OS I can still utilise kernel debuggers, disassemblers and other such tools to mess around with it. Hardware is different, I can't hack around with an Intel CPU the same way I can hack around with Windows without millions of pounds worth of specialised equipment which needs significant skill and experience to operate. Even if Intel suddenly released all of its designs and documentation to the general public altering a design and then actually using it is expensive and difficult (Unlike with the linux kernel where all I need to do is to be able to type 'make bzImage' and wait). Hardware also has a higher barrier of entry. There's a lot less in the way of free tools and you're going to need to have some actual hardware to test. FPGAs can be used as prototyping platforms but even the cheapest dev boards are around £50 while most that could be used for some decent prototyping work are several thousand. ASIC production, even in prototyping quantities is very expensive, requires complex proprietary software and you can only get one chance to get it right. That said open hardware does exist, Opencores is a site that provides open IP. There's also the Open Graphics Project attempted to build an open source graphics card, however it seems to have been around for ages and little progress has been made.
  15. BS/BA Computer Science

    I don't know about the US but I know here in the UK precisely what your degree is called doesn't really tell you much. Go and look at what the different courses actually involve and work out what suits you best.