*Coder Blog

Life, Technology, and Meteorology

Month: January 2004 (page 1 of 2)

Starting your own software company.

Brent Simmons, the author of NetNewsWire has set up a Yahoo Groups mailing list for people interested in setting up their own Mac software company. Since I’m very interested in starting my own shareware company, I signed up for the list. Hopefully the list will generate a strong community of smaller software developers.

Along the same lines, Slashdot posted an article today on the same topic, but not specific to the Mac platform.

Digital Entertainment Hub

Bob Snow, a contributing editor for O’Grady’s Powerpage, posted a short article on a Digital Entertainment Hub that he thinks Apple should release.

I’ve been interested in setting up something like this for a long time. There are plenty of custom made PC’s that are built into cases that would work well in an entertainment center, but nothing that has struck me as revolutionary, and I haven’t seen much at all for the Mac. This is somewhat surprising to me because the Macintosh is a perfect platform for an AV hub, especially now that Apple has finally started including digital surround audio output with an optical connector on the back of the G5’s.

I’m going to focus on a subset of the list that Bob gave for a digital entertainment hub. Namely:

  • DVD player / recorder
  • CD player / recorder
  • MP3 player / compressor
  • decoder for surround formats
  • TV tuner
  • picture viewer / Internet radio player

The rest of his list are really things that I either think are out of scope for a device like this (such as router functionality, go buy a router at BestBuy for $50), or something that isn’t really all that important to me (such as a gaming device).

Now all of these things are easily available for the Mac platform right now. All current Macs can play DVD’s, CDs, MP3/AAC music, record CDs, and convert audio to MP3/AAC formats. A lot of Macs also include the capability of burning DVD’s as well, knocking another item off the list, and the G5’s include surround sound output, as I mentioned above. Apple has addressed many of these features through the iLife apps and other technologies…making and playing movies (iMovie, iDVD, Quicktime), making and playing music (iTunes, GarageBand), and viewing photos (iPhoto).

So what’s really missing is a TV tuner (preferably with Tivo-like functionality so we can time-shift shows we would like to watch). Luckily, Elgato released an updated EyeTV 200 earlier this year. This model is much better than the original in my opinion. It connects to your computer over a Firewire connection, which makes a lot more sense to me than using USB. Also, the EyeTV 200 records full-resolution video. The previous version was stuck with half resolution because the USB interface couldn’t handle as much bandwidth. All this, for about $350 sounds like a great deal to me.

Now for the hard part, integration. Integration is the single thing that all of the so-called “Digital Entertainment Hubs” are missing. It is also the hardest part of building a system like this. In my eyes, there are two possible scenarios that would solve the integration problem.

The first is using a separate hardware system that will interface with your Mac to provide all of this functionality in a nice interface on your TV. The advantage of this is that you don’t need to have your computer sitting right next to your entertainment system. As long as you have a fast connection between your Mac and the hardware to interface with your entertainment system, you should be set. Elgato has come out with such a product that addresses a lot of the functionality that is listed above. It’s called the EyeHome, and it acts as an interface between a Mac and your entertainment center for TV shows recorded with an EyeTV, Movies (including MPEG 1, MPEG 2, MPEG 4, and DivX), Music from your iTunes library, Internet radio, and Photos from your iPhoto albums. It seems like a nice and easy way to go, for around $250.

The second integration option I can see is coding some software to do all of this integration right on the Mac. This is definitely not an easy task, but it would provide for all of the functionality of the EyeHome, and also include the ability to burn DVDs and CDs right from your living room. It would also allow you to have more Internet functionality like IMing and email (EyeHome only allows you to browse websites that you have bookmarked in Safari). The main drawback here is finding a good interface to use. In the case of the EyeHome, a remote control is included and it uses your TV as a monitor. Using a TV as a monitor on a Mac is also pretty easy with S-Video connectors being common on video cards, but a keyboard and mouse would probably be required for full functionality…and where would you put that in your living room? Of course with Bluetooth, you could have a wireless keyboard and mouse, which would make things a little better. Overall, though, this type of setup leaves room for a lot of improvement.

So what’s the best way to do it? In my opinion, the EyeHome is the way to go. It keeps things easy, and if I ever do want more functionality, I can just bring my Powerbook to the living room. Also, the EyeHome gives me the option to have multiple systems in different rooms of the house and having all of my music and movies accessible in each location.

Some time in the future, I may talk more about storage options and network architecture for a system like this. It would definitely be necessary to have a ton of storage if you wanted to keep all of your DVD’s online. 🙂

Mail Relay through Apache

At work, I noticed one of our client’s mail server relaying SPAM. This was pretty odd as I just upgraded their system to the latest version of Postfix two weeks ago. I poked around a bit to find out how the mail was being relayed, and it ended up that Apache, which was running on the same box, was acting as a mail proxy. Here’s one of the lines that was showing up in the server logs:

xx.xx.xx.xx - - [26/Jan/2004:14:54:31 -0700] "POST http://xx.xx.xx.xx:25/ HTTP/1.1" 200 989 "-" "-"

It seems that when mod_proxy is configured on an Apache server, it can be used to proxy connections to any IP address and on any port that the user specifies in a POST request. In our case, someone was POSTing to the web server to open a connection to the same server on port 25 to send out SPAM. Since the connection was through the proxy, the mail server saw the connection as coming from localhost, and of course allowed the mail to be sent.

Anyway, I’ve never seen this happen before, and it seems like a lot of work to through just for a spammer to gain a single mail relay. If you ever notice this on a server that you administrate, the solution we used was to install mod_security and block all requests that contain the text “:25/”.


I was looking around today for an ssh client for my Palm Tungsten T, and I came across a very nifty client called TuSSH. So far, it’s been excellent as an ssh client. It’s very easy to use, offers a high resolution display that fits almost a full 80 characters across a single line of text, and has quick connect/disconnect times. About the only feature that I think would make it much better is being able to save connection information for several machines. At the moment, it only saves the last machine and login name you used to connect. Requiring the user to re-write their password makes a lot of sense, of course.

My wife, Katrina, bought me my Tungsten T for my birthday last year and it has become an indispensable tool that I use daily. This Christmas, I finally got a Bluetooth adapter for my Powerbook, so I could use some connection sharing scripts to get my Tungsten online. I still have yet to find a good IMAP mail client with SSL support (the latest version of VersaMail doesn’t support the Tungsten T), so if you know of any, post them in the writeback.

New Look

Well, I decided it was time to add a little more color to my blog. I’ll probably be making some more smaller adjustments as time goes on, but I think this will be a good start for now. Anyway, hope you like it. We now return you to our normally scheduled programming…

Tucson Apple Store Grand Opening

I went to the Grand Opening of the Tucson Apple Store this morning. It was a lot of fun, and I took some pictures while I was there. You can check them out here. I couldn’t get out of there without spending some money. 🙂 I ended up buying Katrina an iCurve laptop stand and David Pogue’s new book, Mac OS X: The Missing Manual, Panther Edition for myself.

Gus Mueller Music

Gus Mueller has posted some really cool music he has created with Apple’s GarageBand software. His latest was posted today. Here are a couple of his past postings.

Keep pumping out the cool tunes Gus!

Desktop Manager 0.5.0

Rich Wareham released Desktop Manager 0.5.0 today. Here’s a quick list of new features.

  • New plugin-based system — almost all user-visible functionality is implemented by plugins.
  • New preferences pane — more like System Preferences.
  • Active screen edges — configurable, switching may be triggered by moving to screen edge.
  • Desktop-based pager — An often reqested feature. A desktop pager compatible with CodeTek VirtualDesktop(TM) skins.
  • Desktop switch transitions — Eight eye-candy switches for your enjoyment [EXPERIMENTAL].
  • Preliminary sticky window support — There is some code for sticky windows available. Currently it is used to make all panels sticky. This will be configurable in future [EXPERIMENTAL].
  • Other non-user-visible bug fixes and optimisations.

I’ve been using Desktop Manager since the 0.3.1 release, and in my opinion it’s the best virtual desktop tool available for MacOS X. It’s very light on resources, and the feature-set is almost exactly what I’m looking for (total sticky window support would be great for XRG). Anyway, if you have a Mac, check it out.

XRG Weather Server

During the past couple of weeks, I have been trying to add functionality to XRG that breaks beyond the bounds of the application itself. One area that I’ve finished is adding contextual menu’s for each graph with additional statistics and links to other applications and web sites. For the weather module, I wanted to link to an online weather site, but most sites go off of US zip codes and not the international standard ICAOs that XRG uses. I finally found a company online that offers free CGI weather server software as long as you have a link to their web site on your server. I gave it a go and modified the templates to match the XRG web page. You can check out the XRG Weather Server here.

Contextual menu support will be included with the upcoming release of XRG 0.5.0. I still have a ways to go before I finish 0.5.0, but it’s looking pretty nice so far. I want to get some feedback on the contextual menus before the release though just in case there is something blatantly obvious that I’m missing. Here’s a list of the menus for each module:

  • CPU Graph: Shows top 5 processes’ CPU usage, and a link to Apple’s Activity Monitor.
  • Memory Graph: Shows top 5 processes’ Memory usage.
  • Battery Graph: Link to open the Energy Saver System Preferences.
  • Network Graph: Shows separate total RX and TX stats for each network interface and links to open the Network System Preferences, Internet Connect, Network Utility, and NetInfo Manager.
  • Disk Graph: Link to open Apple’s Disk Utility.
  • Weather Graph: Shows more detailed current weather statistics and links to the XRG Weather Server for your configured ICAO.
  • Stock Graph: Links to detailed web stock information for configured stock symbols.

Am I missing anything? I’m sure I’ll get comments on it after the 0.5.0 release, but I’d like the menus to be as good as they can be for the initial release.

MacPAD… Why didn't I think of this?

MacShareware.net today released an SDK to help save Mac software developers time when releasing their applications. If you have released a piece of software before, you know it is a ton of work. I usually spend a couple of hours writing something up, and posting it to all kinds of web sites. With MacPAD, it will be a lot easier. From their site, it sounds like Windows developers already have something similar to this…

Basically, how it works is you create a PAD file with information about your application release. This has a short description, long description, release notes, etc, all contained in an XML file. You then upload this file to your website and let other websites such as VersionTracker and MacUpdate know where your PAD file is. Then, all you have to do to release a new version is to simply update the PAD file at that URL. Other servers should pick up the change in a matter of hours.

I really hope that other software sites adopt this method of updating software, as it would make my life a lot easier when releasing XRG. The project is open source and has a page on SourceForge. You can find out more information about the MacPAD SDK here.

Older posts

© 2017 *Coder Blog

Theme by Anders NorenUp ↑