• Home

  • Custom Ecommerce
  • Application Development
  • Database Consulting
  • Cloud Hosting
  • Systems Integration
  • Legacy Business Systems
  • Security & Compliance
  • GIS

  • Expertise

  • About Us
  • Our Team
  • Clients
  • Blog
  • Careers

  • VisionPort

  • Contact
  • Visit at DistribuTECH

    Ron Phipps

    By Ron Phipps
    February 2, 2011

    I had the chance to attend DistribuTECH in San Diego, CA this past week. DistribuTECH is billed as the utility industry’s leader in smart grid conference and exposition. End Point was present at the conference on behalf of Silver Spring Networks. Silver Spring Networks contracted with us to provide a Liquid Galaxy installation for their exhibit.

    The Liquid Galaxy did its job from what I could tell. The exhibit was consistently surrounded with conference goers both interested in listening and watching the tours that were being presented as well as wanting to see what the Liquid Galaxy was all about. This was the first time I had seen the Liquid Galaxy and was quite impressed with how well it worked. I saw many people moving their bodies in sync with what was being displayed on the screen, showing that they felt immersed while within the galaxy. One gentleman knelt down while attempting to look under a graph that was being presented on the screen. This same person had returned to the exhibit several times, bringing colleagues back each time to “show off” what he had found.

    I spent some time on the conference floor, checking out what was being displayed and seeing how others were …


    conference environment visionport

    Browser popularity

    Jon Jensen

    By Jon Jensen
    February 1, 2011

    It’s no secret that Internet Explorer has been steadily losing market share, while Chrome and Safari have been gaining.

    But in the last couple of years I’ve been surprised to see how strong IE has remained among visitors to our website—​it’s usually been #2 after Firefox.

    Recently this has changed and IE has dropped to 4th place among our visitors, and Chrome now has more than double the users that Safari does, as reported by Google Analytics:

    1. Firefox 43.61%
    2. Chrome 30.64%
    3. Safari 11.49%
    4. Internet Explorer 11.02%
    5. Opera 2.00%

    That’s heartening. :)


    browsers

    JSON pretty-printer

    Jon Jensen

    By Jon Jensen
    February 1, 2011

    The other day Sonny Cook and I were troubleshooting some YUI JavaScript code and looking at some fairly complex JSON. It would obviously be a lot easier to read if each nested data structure were indented, and spacing standardized.

    I threw together a little Perl program based on the JSON man page:

    #!/usr/bin/env perl
    
    use JSON;
    
    my $json = JSON->new;
    undef $/;
    while (<>) {
        print $json->pretty->encode($json->decode($_));
    }

    It took all of 2 or 3 minutes and I even left out strictures and warnings. Living on the edge!

    It turns a mess like this (sample from json.org):

    {"glossary":{"title":"example glossary","GlossDiv":{"title":"S","GlossList":
    {"GlossEntry":{"ID":"SGML","SortAs":"SGML","GlossTerm":"Standard Generalized Markup Language",
    "Acronym":"SGML","Abbrev":"ISO 8879:1986","GlossDef":{"para":
    "A meta-markup language,used to create markup languages such as DocBook.",
    "GlossSeeAlso":["GML","XML"]},"GlossSee":"markup"}}}}}

    into this much more readable …


    javascript json perl python ruby

    jQuery Tips and an Ecommerce Demo

    Steph Skardal

    By Steph Skardal
    January 31, 2011

    I’ve recently been jumping back and forth between YUI and jQuery on several different client projects. I prefer working with jQuery, but whenever I work with another framework, I realize what’s out there and how I should continue to improve my skills in my preferred framework. I read up on jQuery tips and put together a summary of common tips I need to follow more explained here in an ecommerce demo.

    The Setup

    Before we get started, some notes on the ecommerce demo and performance testing:

    • The fake product images come from DryIcons
    • A JSON array contains product information (price, image, and title).
    • The code runs on a quick and dirty sinatra app.
    • console.time('task') and console.timeEnd('task') are used to debug task runtime for performance measurement
    • The performance numbers provided in the article were measured in Chrome on Ubuntu where the average of 10 tests is reported. In all the tests, an additional for loop was added as part of the test to see measurable performance differences. See the notes at the bottom of the article on performance differences between Chrome and Firefox.

    A screenshot from the demo app.

    1. The first tip I came across was a recommendation to use a …


    ecommerce javascript jquery performance

    DROID 2 review

    Jon Jensen

    By Jon Jensen
    January 24, 2011

    I got a Motorola DROID 2 phone a couple of months ago and have assembled here my notes about how it has worked out so far. First, some background.

    This is my second Android phone. My first was the Google Ion, basically the same as the HTC Magic. That was running standard Android 1.5 (Cupcake), while the DROID 2 runs Android 2.2 (Froyo) tweaked somewhat by Motorola. I’ve used several other Android phones belonging to friends and relatives.

    Overall I like the Android operating system fairly well. Like everything, it can be improved. It’s been advancing at a fairly quick pace. It’s mostly free software. Too many phones are locked down and have to be broken into to change the operating system, but Android’s still a freer computing environment than most phones have and I hope the situation will improve over time.

    I take for granted much of Android’s feature set: The excellent system-wide notification bar that many apps hook into and which is always easy to get to. The solid multitasking. Automatic screen adjustment for using the phone in landscape vs. portrait mode. The ability to mount the normal filesystem on the SD card from another computer via USB or by removing the SD card. The …


    android mobile

    Ruby Ecommerce with Sinatra: Admin and Products

    Steph Skardal

    By Steph Skardal
    January 22, 2011

    Last week, I wrote about creating a very simple ecommerce application on Ruby with Sinatra. This week, we continue on the yellow brick road of ecommerce development on Ruby with Sinatra.

    yellow brick road

    A yellow brick road.

    Part 2: Basic Admin Authentication

    After you’ve got a basic application running which accepts payment for a single product as described in the previous tutorial, the next step is to add admin authorization to allow lookup of completed orders. I found several great resources for this as well as a few Sinatra extensions that may be useful. For the first increment of implementation, I followed the instructions here, which uses Basic::Auth. The resulting code can be viewed here. I also introduce subclassing of Sinatra::Base, which allows us to keep our files a bit more modular and organized.

    And if we add an “/admin” method to display orders, we can see our completed orders:

    Completed orders.

    Part 3: Introducing Products

    Now, let’s imagine an ecommerce store with different products! Whoa! For this increment, let’s limit each order to one product. A migration and model definition is created to introduce products, which contains a name, description, and price. For this increment, …


    ecommerce rails sinatra

    check_postgres without Nagios (Postgres checkpoints)

    Greg Sabino Mullane

    By Greg Sabino Mullane
    January 21, 2011

    Version 2.16.0 of check_postgres, a monitoring tool for Postgres, was just released. We’re still trying to keep a “release often” schedule, and hopefully this year will see many releases. In addition to a few minor bug fixes, we added a new check by Nicola Thauvin called hot_standby_delay, which, as you might have guessed from the name, calculates the streaming replication lag between a master server and one of the slaves connected to it. Obviously the servers must be running PostgreSQL 9.0 or better.

    Another recently added feature (in version 2.15.0) was the simple addition of a –quiet flag. All this does is to prevent any normal output when an OK status is found. I wrote this because sometimes even Nagios is overkill. In the default mode (Nagios, the other major mode is MRTG), check_postgres will exit with one of four states, each with their own exit code: OK, WARNING, CRITICAL, or UNKNOWN. It also outputs a small message, per Nagios conventions, so a txn_idle action might exit with a value of 1 and output something similar to this:

    POSTGRES_TXN_IDLE WARNING: (host:svr1) longest idle in txn: 4638s

    I had a situation where I wanted to use the functionality of check_postgres …


    database monitoring open-source postgres

    Ecommerce on Sinatra: In a Jiffy

    Steph Skardal

    By Steph Skardal
    January 17, 2011

    Several of us at End Point have been involved in a non-ecommerce project for one of our clients running on Ruby, Sinatra, Unicorn, using DataMapper, PostgreSQL, PostGIS, with heavy use of JavaScript (specifically YUI). Sinatra is a lightweight Ruby web framework – it’s not in direct competition with Rails but it might be a better “tool” for lightweight applications. It’s been a fun project to work with Sinatra, DataMapper, and YUI as I’ve been working traditionally focused on their respective related technologies (Rails, ActiveRecord, jQuery).

    Out of curiosity, I wanted to see what it might take to implement a bare-bones ecommerce store using Sinatra. Here is a mini-tutorial to develop an ecommerce store using Sinatra.

    A snapshot of our final working app.

    Getting Started

    I create a new directory for the project with the following directories:

    sinatrashop/
      db/
        migrate/
      models/
      public/
        images/
         stylesheets/
      views/

    Data Model

    Now, let’s look at the data model. Since this is a bare-bones store, I have one order model which contains all the order information including contact information and addresses. We’re not storing the credit card in the database. Also, since …


    ecommerce ruby sinatra
    Previous page • Page 172 of 222 • Next page