Ideas for a Geek Ranch Web Site
In my last article I introduced the idea of the Geek Ranch. The facility will be more than just a place for geeks to write code. We are going to need a web site to promote the facility to the various audiences. All the pieces of that web site are not yet determined but we do have an initial features list.
Here it is:
- A basic "about the facility" part with sub-parts for each facet of the facility. That means Geek Cottages will be in a different page or section than Eco-Tourism, the conference center or the restaurant.
- Weather is a selling point. We want to offer current and historical weather information.
- Let's toss in a web cam or two. While a sunny day with coffee maturing in December isn't news here, it will certainly help someone in Minnesota decide why they would rather be here.
- A section about the farm. The farm project will be special and we want to help people understand what we are doing. Note that the people that need to understand are not just potential customers—locals need to get the picture as well.
- A reservation system. This might start out as a form that gets emailed to us but needs to evolve into an on-line system to place reservations and handle credit card processing.
- Some sort of photo gallery. This is still being thought about but, for example, it would be nice to have photos of each type of plant growing on the property and a description. I mean, some of you probably can't tell your nancite from your jocote.
- Last but not least, the site need to be at least bi-lingual.
While we could conceivably write this all from scratch, we are smarter than that. We have learned that there are lots of systems available to produce web sites. Concentrating on the look and the content is where we need to focus. That said, here are three possible approaches--each with pluses and minuses. There are, of course, many more.
Karrigell is a Python-based web framework. It is minimalist which means it does less than you might want but, on the other hand, it is very easy to understand. The Sourceforge page will tell you the story.
I used Karrigell to write a radio station controller. I did that project over three years ago. It was easy to implement and while what I built was only a prototype, it did what I needed. As the radio station is designed to be a Linux box with nothing but flash memory, a wireless link and a transmitter all running off a battery and solar panel), minimalist was important. Karrigell is compact, includes its own web server and requires little in the way of a high-performance system to get the job done.
The downside is that Karrigell is not a Content Management System (CMS). While it offers a lot of tools to put together your site, you will find yourself writing Python to get your job done. It is a step up from writing in PHP from scratch but you will still have a lot of work to do if you need to present a lot of dynamic content.
If, however, your site is mostly static with a few "intelligent" pages, Karrigell might be the perfect fit. Static content can be served directly so you only need use its magic when the page has funny stuff to do.
Drupal has been "the answer" for sites that require a CMS for us for years. While it is big it is efficient and modular. There is a module to do most of the things you want and it is easy enough to either embed PHP into a block or article or write a new module if you have something special to do. You can find more on the Drupal site.
There are also many Drupal themes that you can use or modify a bit to make the site look like what you want. With the advent of CSS and the ability in most systems (including Karrigell) to include pieces to make up a page, a pre-packaged theme is a bit less important. If, however, you want to get on with writing content and firm up your presentation later, Drupal is a very good place to start.
The one reservation I have is the multi-language aspects of Drupal. The ability to have the site information--that is, all the stuff Drupal supplies such as menus--appear in a user's choice of languages seems to work great. Handling multi-language content, however, seems to be less than perfect. Specifically, the internationalization module is a bit cumbersome to use and has an array of outstanding bugs. I am hoping that these issues get cleared up in Drupal 6.
Joomla is probably the closest competition to Drupal as far as a CMS. Joomla grew out of Mambo. A great feature for dealing with multiple languages is a module called JoomFish. The name clearly came from combining Joomla and Babelfish. While it is a multi-language module it is not an automatic translator. For a site where you want it to be correct in multiple languages, this is actually a plus.
Joomfish intercepts content reads by the CMS front end. If the user prefers a language different from the site default, Joomfish checks to see if a translation is available in that language. If so, the translated version is delivered. It has a nice management interface that shows you what you have translated, what you haven't and what was translated but is out of date.
If you want to see how this works in "real life", take a look at NicaPlaza.com. It is implemented using Joomla and Joomfish.
The Joomla site tells you a lot more including information on a possible licensing issue. Joomla is licensed under the GPL and there is a debate going on regarding the interpretation of "linking" Joomla with non-GPLed code. The current stance is that starting with version 1.5 (the next major release) this will no longer be allowed. As many Joomla third party addon modules are commercially licensed, this could send Joomla to the bottom of list of choices. Only time will tell.
What will we pick? We don't know yet. The true geek in me wants to pick yet another answer, Django a huge and amazing toolkit that among many other things means I can write just Python and never have to touch SQL again.
For me, Django would be the most fun but it is far from the quickest way to get the site we need up and running. Being a bit more pragmatic than some, I will continue to play with Karrigell, Drupal and Joomla until I am convinced which one will get the results we need with the least effort.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- Paranoid Penguin - Building a Secure Squid Web Proxy, Part IV
- SUSE LLC's SUSE Manager
- Google's SwiftShader Released
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- My +1 Sword of Productivity
- Managing Linux Using Puppet
- Non-Linux FOSS: Caffeine!
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- Rogue Wave Software's Zend Server
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide