Now Providing Cloud Solutions

AWS Certified

Lillibolero is happy to announce that we are now offering solutions architecture, development and administration on Amazon Web Services. 

Amazon Web Services (AWS) provides a broad set of products and services you can use as building blocks to run sophisticated and scalable applications. Running your applications in the AWS Cloud can help you move faster, operate more securely, and save substantial costs; all while benefitting from the scale and performance of the cloud.

The Who, What, How, and Why of Website Design: Part 1


Putting a website up for your business can be a daunting task if you’ve never done it before. Here is part one of our two part guide on what you should consider, how the process usually works, and things you can do to make sure it comes out the way you want it to.


The first thing you should ask yourself is “why are you putting up a website?”. That might seem like an odd question for a website designer to ask, but if you want the project to meet your goals you'll need to know what they are, and you'll need to communicate them to your designer so they can help you achieve those goals.

A common reason to put up a website is that it's really one of the cheapest forms of advertising for your business. A simple website can let potential customers know your business exists, where you are located, what your hours of operation are, and more importantly what you're about as a business. Another reason might be that you have a specific service you wish to offer your customers, or the public at large. A customer portal, for instance, where current customers can log in and check when their next appointment is or how the work you are doing for them is progressing, and a way for you to send messages indicating a change in the work or the schedule. Finally there's a full blown e-commerce site or shopping cart where you can offer the public the opportunity to purchase your goods and services online. Usually this is done to appeal to a potential customer base that is larger than just those customers who could walk in to your shop to buy your goods, though it would not be unheard of to build an e-commerce site simply as a convenience to your existing customers, or because it effectively increases the number of customers who can be served at any one time. Whatever features your website has, a primary goal is to tell the story about your business in a way that resonates with your viewers so those viewers become customers. The bottom line for a website, or really anything you do in business, is ROI or return on investment. Will this website generate more sales than it costs to develop and host? Building a website is usually not an inexpensive process, so you should be clear on how it will be making you money and how long it should take the website to pay for itself. The way you do that is called web analytics, which we will cover in the following sections.



Now that you are clear on your goals, the next task is to decide what to name the site, and what to build. All websites have a domain name that they are associated with. When you type in, the domain name is This domain name is the base of the address of every page of your site, so you should carefully consider what domain name you will use if you don't already have one. The obvious, and best choice is the name of your business. Of course if your business name is Henry's Garage, there may be another Henry's Garage that has already registered the domain . That's why it's a good idea to register a domain if you think you may use it at a later date, even if you don't need it right now. At the very least you can set up your email to use that domain, e.g. , [email protected] , which looks more professional than [email protected] . There are lots of places, called registrars, to register a domain name, and unless you have particular needs for your registrar, one is about as good as another and the deciding factor comes down to the yearly cost to renew the registration and how easy it is to connect your domain name with your hosting account. The name should be as short and memorable as possible, and should end in .com (this is called the TLD, top level domain) unless you have a special reason to choose a different one. One more thing about domain names is that you should make sure it's registered in your name. Ownership of domains is ultimately decided by who is listed as the registrant of the domain. This isn't so much of a problem any more, but previously site owners could get into the situation where their web developer registered the domain in their own name. When the site owner wanted to move on to a different developer their original developer wouldn't let go of the domain name, leaving the site owner at their mercy. Just remember, it's your domain, it should have your name on it.


The hosting account is the place you put the files and data that make up your website. Your registrar probably sells hosting accounts, and your web designer probably has one or two hosting companies that they do business with. Another possibility is that your web designer runs their own server on which they host their clients' websites. For a first website, and depending on what exact services your host is providing, the cost of hosting should be modest. Don't start off getting the biggest and the best because you don't know how well your website will perform and if you get too large a hosting plan for the site you'll just be wasting money. You can always upgrade if you are getting more traffic than your hosting account can handle. That's a good problem to have.


Don't go crazy. Unless your business already has a lot of brand image that you need to remain consistent with, a simple site is usually best. Tell your story with your content. Think of it this way; which would you rather have the viewer remember, the picture or the frame? If the need arises to use some fancy javascript widget to tell the story you want it can always be done later, but if you do it first and it doesn't add to the story you are telling then you've wasted money you could have used elsewhere. It's about ROI, remember? A website is sort of like a house, except you don't need a building permit when you add a room or remodel the kitchen. And as time goes on you're guaranteed that you will be adding to and modifying your website, so it's best to get comfortable with the basic site and how it functions before you start changing out the fixtures.

The navigational structure, or sitemap of the site should be guided by its underlying goals. For instance, if the goal of the site is to make your business known and generate leads, then what you are trying to do is tell a story about why the viewer should visit your brick and mortar store, call the phone number presented to them, or write to the email address you provide. You should minimize the number of things your user needs to do such as clicking, scrolling, scanning through dense content, in order to call that phone number or write to that email address. Your competitor's website is always one click away! Never take for granted that the user is on your site, and always keep them focused on completing the goal.


Here's what we've covered so far:

  • Have clear goals for what you want your website to do.

  • Regardless of whether it's a basic brochure site, customer portal, or e-commerce site, your website should tell a story about your business that resonates with your customers.

  • As a business function, your website should be viewed in terms of return on investment; is the profit or exposure from the website worth the cost of developing and maintaining it?

  • If you don't have one, you'll need a domain name. There are a lot of domain registrars where you can get one, and your web designer should be able to help you choose which one to work with. Make sure it's registered in your name and not your designer's because whoever is listed as the registrant owns it, regardless of who paid for it.

  • Don't get too much hosting, You can upgrade if you need to, but you can't get your money back on hosting that isn't needed.

  • Keep it simple. You can and will add to and expand on your site as time goes by, so there's no need to do it all up front.

  • The sitemap should be guided by your goals for the site, whether it's buying, clicking, calling or visiting your store in person.

  • Your competitor's website is always one click away!

That's the briefest of introductions to planning your new website. In the next installment we will look at the process you should expect in building out your website, some tips to make the whole experience easier, and make you your web developer's favorite client, and how to choose a web design company. See you then!  

Let's Encrypt. Yes, let's.

Let's Encrypt Logo

Lillibolero has signed up for the Let's Encrypt Beta program. In case you haven't heard of it, Let's Encrypt is a project to make ubiquitous HTTPS a reality, thereby making the web as a whole safer. To that end they've become a Certificate Authority, and yesterday announced that they have received cross-signatures from IdenTrust. This makes their certificates trusted by all major browsers. They aren't at the point of handing out certificates yet, but they've started a Beta program, and I'm interested enough to sign up for it and see how it pans out. I've signed up for other projects like this before, notably , and been a little disappointed so I'm not holding my breath. Still, Let's Encrypt seems to have more substantial backing from the likes of Mozilla, Akamai, and Cisco, so it sounds hopeful. I'll update as the story unfolds.


Install OrientDB as a Service on a Mac


OrientDB is a multi-model database that combines the best of a document database and a graph database. I've played around with it off and on, but one difficulty is that I've always had to restart the server manually whenever I reboot my Mac. Being an old Linux guy, steeped in chron and /etc/init.d , I've never taken the time to learn Apple's launchd system or the plist files they depend on. Until now. Turns out they're pretty simple. The Orientdb documentation covers basic installation of the database pretty well so I won't repeat that here. Instead I'll detail the part I couldn't find, installing the database as a service which starts on system boot. Most of this is cribbed from this article on installing MongoDB as a service on OS X, so thank you Mr. Ali Al Dallal for that. 

I usually install third party tools that don't have any installer in /usr/local , and being an old Linux guy I usually decompress the versioned directory from the tarball in /usr/local and then create a soft link to it, so my path the OrienDB install is /usr/local/orientdb .  The plist I used is available as a GIthub gist here . It goes in /Library/LaunchDaemons, named, for instance org.orientdb.orientdb.plist . As you can see in the gist, stdout and stderr are redirected to log files /var/log/orientdb/sout.log and /var/log/orientdb/serror.log respectively, so we need to create that directory :

sudo mkdir /var/log/orientdb

and create the stubbed log files

sudo touch /var/log/orientdb/sout.log

sudo touch /var/log/orientdb/serror.log

Finally we need to grant ownership of the plist file to root:wheel

sudo chown root:wheel /Library/LaunchDaemon/org.orientdb.orientdb.plist

And then start the server running

sudo launchctl load /Library/LaunchDaemon/org.orientdb.orientdb.plist

sudo launchctl start org.orientdb.orientdb

And your server should be up and running every time you reboot your system.

Just for completeness, stopping your server is what you would expect

sudo launchctl stop org.orientdb.orientdb

As is removing it from the list of things that start at boot time

sudo launchctl unload /Library/LaunchDaemon/org.orientdb.orientdb.plist

which will also stop the job, if running.


Public Internet Access

The Cottage Grove Public Library uses LTSP and the materials on hand to create a 10 station public Internet access project for very little money.

 Public Internet TerminalsInternet access has become a standard service in public libraries. In late 2005 the Cottage Grove Public Library's Internet access stations were in a sorry state. Most of the Windows Me based stations were unusable, the rest were virus laden, unstable, and a maintenance nightmare for the library staff who had to clean porn off of them almost daily. With the help of Lillibolero Inc. the Internet access stations were rebuilt as an LTSP system. The computers available for the system included various older machines, the former Windows Me boxes which were custom built P4 based systems with 256Meg of memory, a Dell Optiplex G100 that was found buried in the store room, and 3 more Optiplexes that were bought used from the local computer recycling center for $35 a piece. A motley array of outdated equipment that had no hope of running as stand alone machines. The machine chosen as the server was not much better, and was really only chosen by virtue of having a larger disk drive and 1Gig of memory. These machines, along with an HP Procurve switch, were assembled and Ubuntu Linux 5.10 was installed on the server. After installing the LTSP software and adding some security configuration for the public terminals, the initial set of six terminals were ready to go. The system was an immediate success, so much so that a somewhat more powerful server had to purchased, and an additional 4 terminals were added for a current total of 10.  

Public Internet Terminals Some quick facts: Between Sept 2006 and Sept 2007 there have been 27000 library patron logins on the library's public terminals, not including their wifi service. A similar system was built to run all the staff and circulation services on a separate server. Because a terminal server system is being used, the terminals can be much older hardware without having any ill effects on user experience. All the terminal is being used for is to run the monitor, keyboard and mouse. This translates into a tremendous savings in the hardware budget, reducing what they would have had to pay for stand alone machines of similar functionality by at least 50%.

Public Internet Terminal Hardware is not the whole story. There have been no security incidents, and very few hardware or software failures on either of these systems. This is in contrast to the experience of other public libraries, which use stand alone machines running a Windows system with a locking package. Maintenance and security on these systems are a constant problem. Windows does some things well, but security has never been it's strong suit. The maintenance on the LTSP system is very low because there are only 3 important servers in the system and they are kept in a physically secure room far away from the public. The terminals that the public use are little more than network appliances, easily replaceable with either dedicated terminals or older PCs that have outlived their usefullness as standalone computers. In short, the system works. The system works really well, which is why similar systems are used every day by hundreds of thousands of school children all over the world. As an example, even our local 45J school system uses it in their computer labs.

The Library's LTSP systems are a resounding success, built for pennies on left over computers and strategically placed servers. There are few if any problems, most of which come from power failures. We have no problems with incompatibilities with other operating system's data files as that has been a strong development focus in open source software for the past few years. To be fair, there are a few problems with websites that have not been written in a standards compliant manner, but rather targeted at a single proprietary web browser. These problems have mostly been resolvable in all but the most egregious instances.

Charter on Shortridge

Dear Shortridge Hill Rd. Neighbors, You may have noticed Charter Communications trucks and linemen working by the side of London Rd. as you come and go into Cottage Grove. These linemen are installing cable TV lines down London Rd. , bringing to every home they go by the possibility of cable TV, phone and high speed Internet access, up to 100Mb/s . I recently had a conversation with a local representative of Charter Communications, and it turns out that the current plan for this project is to terminate the line a mere 1500 ft north of our street, presumably at the intersection of London and Reservoir Rd. !

This is where you come in:

If we can show them that there's interest, we should be able to get them to extend their project through our neighborhood. Think about it: no more losing your Internet connection or your TV picture because the weather turned bad. No more paying through the nose because the satellite companies think they are the only game in town. What you would need to do is go down to the Charter office on Main St. and ask them for service on Shortridge Hill Rd, Riley Ln, or Woodson Ln, wherever you happen to live. If enough of us do this they will get the idea that it's economically feasible to extend service to our neighborhood.
— 20 Items per Page
Showing 6 results.