SQL Ports, Blocking and ISP Providers

My ISP Provider (Cox Communications) is blocking SQL Ports. This issue is transparent to the most of residential internet users. In my case it has caused me much grief and wasted time. Thankfully, I was able to find a solution (without upgrading to a Business Plan, which in my case was nearly $60 more per month – no bueno).

Here is the scoop.

If you try to connect to a remote sql database using just the following as a server name: IP Address\SqlExpress , there will be a nasty error (see below). In my case this was a sign of ISP Blocking SQL Ports. A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 – Error Locating Server/Instance Specified)

Note: Remote server does allow remote connections because all of my coworkers not using the same ISP provider connected to that server remotely just fine.

So here is the solution (it is rather simple, if you can access ERRORLOG file on the server).

On the remote server, navigate to the following location:
C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\Log

There should be an ERRORLOG file (there could be several, but look for the one that has the latest date stamp). In that ERRORLOG file, see if you can find something similar to this:
2011-09-30 13:49:21.07 Server Server is listening on [ 'any' 49910].
2011-09-30 13:49:21.07 Server Server is listening on [ 'any' 49910].

Number 49910 is a port number that will have to be appended to the server name (it will most likely be different on each server).

In my case, here is the connection string that worked:
IP Address\SqlExpress, 49910

Hopefully, this helps someone.

Mobile JS Summit 2011

This year I have attended another online conference – Mobile JS Summit - brought by Environments for Humans.

Designing for Touch by Josh Clark

This was a great session with lots of good information and tips in regards to optimizing placement of buttons to minimize touch collisions and etc. Here is the Designing for Touch presentation by Josh Clark (Note: to view his notes, click on “Speaker Notes” tab underneath the slides).

Here are my takeaways from the presentation:

  • Edit Button should be placed in the top right corner
  • Controls at the bottom (site navigation)
  • Content at the top
  • use anchors (example: AdAge mobile site)
  • fingertip is 44 points wide
  • 44 and combinations of it is Apple’s UI magic number
  • practical minimum for buttons: 29×44 points
  • chunky touch areas are better
  • it should not be about the interface, but the content. interface should highlight content, not obscure or confuse it
  • page flips = horse droppings

Mobile Apps and the Enterprise by Jonathan Stark

View Jonathan’s slideshare presentation.

The Realities of Mobile Design by Jenifer Hanen

Native App vs. Mobile Website App = Do what is best for the User and Context

Mobile Design Constraints:

  • screen size
  • resolution
  • browser
  • memory
  • speed and OS
  • touch or non-touch

General Considerations:

  • International Data plans are expensive. Do not assume user intent, context, or location.
  • Give user a choice. For example, 34MB gmail download while on international roaming, which resulted in over $300 charge could have been avoided with a confirm download options.
  • Design Tips: Research, Simplify, Refactor, Reduce Assets.
  • Data Sipping: Only load what you need (utilize compression tactics).

UA Detection Client Side:

UA Detection Client + Server Side:

Sencha Touch by David Kaneda

David Kaneda’s personal blog

  • Sencha Touch is a free JavaScript framework for building rich mobile apps with web standards
  • The sweet spot: Web (easy to style, flexible and fast development, cross platform, and more developers) and Native (responsive UI, optimized data, and rich controls)
  • Sencha Charts - written in canvas.

What you get (examples – Kitchen Sink):

  • Touch Events (Tap, Double tap, Tap and hold, Swipe, Pinch, Drag & Drop)
  • Scrolling (Lists, Carousel, Pickers)
  • Components (Lists, Carousel, Picker, Overlay, Slider, Forms & Fields, Toolbars & buttons, HTML5)
  • Theming (CSS3, Sass & Compass, 300+ Pre-included icons, Robust Animations, Resolution Independent
  • Full Application Architecture (MVC, History Support, Device detection, Orientation events, Layouts, Animations)

Sencha Resources: API docs, Sencha Forums, Sencha Learn.

jQuery Mobile by Marc Grabanski

View Marc’s slideshare presentation

Why jQuery Mobile?

  • Ajaxified Navigation
  • Touch Friendly Inputs
  • Layout & Theming Engine
  • Deepest Distribution
  • Devices Tested
  • Fully Supported (iOS 3.2+, Android 2.1+/Honeycomb, Windows Phone 7, Blackberry 6.0/Playbook, Palm WebOS 1.4+, Mobile Opera & Mobile Firefox, Amazon Kindle 3, Desktop: Chrome, FF, IE7+, Opera)
  • Progressive Enhancement

Miscellaneous

Appcelerator Titanium by Kevin Whinnery

View Kevin’s slideshare presentation.

My takeaways:

  • Native Apps run faster and smoother on resource constrained devices
  • Titanium is an open source framework for building native mobile or desktop applications using open web technologies (JavaScript, HTML and CSS)
  • Platform features: Native UI, Location APIs, Local and Remote Data, Social APIs, Rich Media APIs, Open Source and Extensible, Integrated Analytics, Development Tools
  • Developer Resources: API Docs (mobile and desktop), Programming Guides (mobile and desktop), Community Q&A, Video Tutorials, IRC (#titanium_app kwhinnery/hal/adecena/mattapperson/fusion94 on irc.freenode.net

Notes from other attendees

Mark DuBois

Follow Mobile JS Summit’s presenters

  1. Josh Clark – @globalmoxie
  2. Jonathan Stark – @jonathanstark
  3. Jenifer Hanen – @msjen
  4. David Kaneda – @davidkaneda
  5. Daniel Pinter – @HeadDZombie
  6. Simon St.Laurent – @simonstl
  7. Marc Grabanski – @1Marc
  8. Steven Gill – @_SteveGill
  9. Kevin Whinnery – @kevinwhinnery
  10. Tom Dale – @tomdale