<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>Tom Mollerus&apos; Weblog</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/" />
   <link rel="self" type="application/atom+xml" href="http://www.mollerus.net/tom/blog/atom.xml" />
   <id>tag:www.mollerus.net,2012:/tom/blog/1</id>
   <updated>2012-01-25T02:55:43Z</updated>
   <subtitle>Web Security, Usability, CSS/XHTML, ColdFusion, and PHP</subtitle>
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.25</generator>


<entry>
   <title>Often imitated.</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2012/01/often_imitated.html" />
   <id>tag:www.mollerus.net,2012:/tom/blog//1.310</id>
   
   <published>2012-01-25T02:53:38Z</published>
   <updated>2012-01-25T02:55:43Z</updated>
   
   <summary>My company, Ping Identity. Often imitated. IMPOSSIBLE to duplicate....</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="At Large" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>My company, Ping Identity. Often imitated. IMPOSSIBLE to duplicate.</p>

<object width="640" height="360"><param name="movie" value="https://www.youtube.com/v/L2z4CzNxGiI&hl=en_US&feature=player_embedded&version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed src="https://www.youtube.com/v/L2z4CzNxGiI&hl=en_US&feature=player_embedded&version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="360"></embed></object>]]>
      
   </content>
</entry>

<entry>
   <title>Evaluating online wireframing tools</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/11/evaluating-online-wireframe-tools.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.306</id>
   
   <published>2011-11-16T18:35:32Z</published>
   <updated>2011-11-16T18:30:23Z</updated>
   
   <summary>I&apos;ve recently found myself evaluating wireframing tools, and I thought I&apos;d share the results of my analysis. First, let&apos;s put out a definition of just what a &quot;wireframe&quot; is: &quot;[a wireframe] is a visualization tool for presenting proposed functions, structure...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Code Building\Versioning" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Web Development" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>I've recently found myself evaluating wireframing tools, and I thought I'd share the results of my analysis. First, let's put out a definition of just what a "wireframe" is:</p>

<blockquote>"[a wireframe] is a visualization tool for presenting proposed functions, structure and content of a Web page or Web site. A wireframe separates the graphic elements of a Web site from the functional elements in such a way that Web teams can easily explain how users will interact with the Web site."<br />
From <i><a href="http://www.webopedia.com/TERM/W/wireframe.html" title="Definition of wireframe">Webopedia</a></i></blockquote>

<p><strong>Here are the main criteria I used to compare wireframe tools:</strong><br />
</p><ul>
<li>I would prefer an online tool, or at least a desktop tool that offers real-time collaboration instead of file fragmentation. This tool should offer the ability to preview or user-test the wireframe over the web.</li>
<li>I would love a tool that promotes and supports gradual enhancement of site elements, starting with basic page elements showing relative priority, then adding layout, then adding visual design.</li>
<li>I would love functional prototyping, where you can configure clickthroughs from one page in the wireframe to another. In-page functional prototyping (such as drop-downs, popups, overlays, AJAX, etc., would be a bonus).</li>
<li>I really want master templates to support global changes to page elements (ie, when you change the header or footer or even the layout of the template, it affects all pages in the wireframe).</li>
<li>Export in HTML/CSS is highly preferred since it would save me time, but it's not completely necessary from my perspective.</li>
<li>I would love the ability for us to add comments and annotations to individual page elements. This will help us evolve each wireframe, and annotations can serve as valuable notes during development to tell webdevs how each page should function.</li>
</ul>

<p>I looked at the following tools:</p>

<div><strong>Mockingbird (</strong><a href="http://gomockingbird.com/">http://gomockingbird.com</a>)</div><ul><li>Like the snap-to alignment!</li><li>Drag pages onto page elements to create links</li><li>I like the ease and simplicity, but there doesn't seem to be a header/footer/page wrapper-- no master templates.</li><li>Only exports as PNG/PDF.</li></ul>Summary: I really like the simplistic, easy-to-understand, let's-just-wireframe interface for MockingBird. This product has great potential. But the fact that it doesn't have master templates and doesn't export to HTML makes this tool less useful than I need.<div class="paragraph_break"><br /></div><div><strong>MockFlow (</strong><a href="http://mockflow.com/">http://mockflow.com</a>)</div><ul><li>Exports as HTML.</li><li>I don't like the open dialog, but I love the fact they have templates for different devices.</li><li>Flash-based, and so the interface just isn't as fast as others.</li><li>Controls for master templates are very hard to find.</li></ul><div>Summary: this tool reads as if it offers us everything we want, but I find that the interface just isn't pleasing to use.</div><div class="paragraph_break"><br /></div><div><strong>iPlotz (</strong><a href="http://iplotz.com/">http://iplotz.com</a>)</div><ul><li>Requires Flash</li><li>Has page commenting</li><li>I like the presence of the drag-n-drop widget list, but it's ordered alphabetically instead of by functional groups, and the drawings look like a pencil sketch.</li></ul><div>Summary: This tool also reads as if it offers everything we want, but I don't prefer the user interface.</div><div class="paragraph_break"><br /></div><div><strong>Axure (</strong><a href="http://axure.com/">http://axure.com</a>)</div><ul><li>It's a download, but has collaborative access (even SVN, where you can check out individual pages).</li><li>Can upload files to share.axure.com to generate password-protected prototypes, or can generate local prototypes.</li><li>You can export all copy</li><li>You can gather and manage comments</li><li>You can add annotations/page notes</li><li>Export HTML</li><li>Masters make templates for header, footer, etc.</li><li>Disappointing that you have to publish specs to MS Word</li><li>Disappointing that it's not a one-step publish to a web-available prototype.</li></ul><div>Summary: Even though it's a desktop tool, I really like the Axure interface. Its annotations and comments work really well, and I think the SVN capability would let us work perfectly well in real time. It produces very good documents, and I think we could easily live with the local HTML exports (as opposed to online prototypes). &nbsp;It is way expensive, though. Worth it, if you ask me. I really like this tool. Of those I've looked at, it has the easiest-to-use interface by far.</div><div class="paragraph_break"><br /></div><div><strong>ProtoShare (</strong><a href="http://protoshare.com/">http://protoshare.com</a>)</div><ul><li>Has templates and masters</li><li>Has component/widget palette, but these tend to be richer and more complex than I really want.</li><li>Has page documentation and annotation</li><li>Lets you modify CSS and HTML</li></ul><div>Summary: Of the pure online tools, I would have to settle on Protoshare. Note that I use the term "settle", because I don't prefer the interface (Mockingbird really has the best one). The widgets and dialogs are intended to be powerful, but really make for just a little bit too many clicks and too much reading. So it seems to me this tool has a learning curve to it, but once over that, I imagine it would be a fast and handy tool.</div><div><strong></strong></div><div class="paragraph_break"><br /></div>]]>
      
   </content>
</entry>

<entry>
   <title>Fix for the &quot;Unable to load default SVN client&quot; for Subclipse/JavaHL on Eclipse, even after you&apos;ve installed the Collabnet binaries and checked your path</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/11/fix_for_the_cant_find_default_svn_client_for_subcl.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.309</id>
   
   <published>2011-11-14T14:06:01Z</published>
   <updated>2011-11-14T14:04:08Z</updated>
   
   <summary>I&apos;ve been tearing out my hair, muttering curses under my breath, and slamming my fists to my desk for much of this week. The fault lies with Subclipse, and its stubborn refusal to find the default SVN client (namely JavaHL)...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Code Building\Versioning" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>I've been tearing out my hair, muttering curses under my breath, and slamming my fists to my desk for much of this week. The fault lies with Subclipse, and its stubborn refusal to find the default SVN client (namely JavaHL) that I so kindly installed for it on my MacBook Pro.</p>

<p>It all started when I completely rebuilt my Eclipse environment, using the latest version, Indigo, so that I could install the wonderful PhoneGap plugin. I installed the latest version of all of my plugins, including Subclipse, and I also installed the latest <a href="http://www.open.collab.net/downloads/community/">CollabNet subversion binaries</a>. <a href="http://subclipse.tigris.org/wiki/JavaHL">Subclipse's wikipage for JavaHL</a> says that if you install these binaries says that you shouldn't have to do any further configuration to get Subclipse to work, but in my case that turned out to be wildly optimistic, to say the least. Each time I tried to use a Subclipse feature, I was presented with the dialog that I gather all too many people are familiar with: "Unable to load default SVN client". A <a href="https://encrypted.google.com/search?q=unable+to+load+default+svn+client+eclipse">search across the Googles for this sentence</a> gave me a lot of results, almost all of which referred to confirming the path variables in your .profile file or your eclipse.ini file. I edited, I confirmed, I failed. Again and again. I even tried to install SVNKit, but their subversion client doesn't support the svn client version of 1.7.x that Subclipse was looking for.  <em>Aargh.</em></p>

<p>The binaries that Collabnet installs have version numbers of "1.0" in their filenames, so you really can't tell what version they are. Instead you have to run "<code>svn-javahl --version</code>" to get that information.  And what do you know, I had version 1.6.x.</p>

<p><strong>So the final solution?</strong><br />
<ol>
	<li><a href="http://www.macports.org/install.php">Install MacPorts</a> if you don't have it already.</li>
        <li>Use MacPorts to install the JavaHL bindings (you'll get the latest version by default):<br />
         <code>sudo port install subversion-javahlbindings</code></li>
</ol>
</p>]]>
      
   </content>
</entry>

<entry>
   <title>Trouble updating Eclipse plugins for PhoneGap or Android?</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/11/trouble_updating_eclipse_plugins_for_phonegap_or_a.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.308</id>
   
   <published>2011-11-05T01:17:37Z</published>
   <updated>2011-11-05T01:31:15Z</updated>
   
   <summary>After watching Ray Camden&apos;s show-and-tell session today on using PhoneGap to create his mobile app WTFRU, I was inspired to install some of the same Eclipse plugins that he used so I could create some apps myself. It&apos;s been a...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Mobile apps" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Web Development" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>After watching <a href="http://www.coldfusionjedi.com/index.cfm/2011/11/4/Latest-Mobile-app--WTFRU">Ray Camden's show-and-tell session today on using PhoneGap to create his mobile app WTFRU</a>, I was inspired to install some of the same Eclipse plugins that he used so I could create some apps myself. It's been a while since I fiddled with the Android SDK, so a lot of my packages were way out of date.</p>

<p>But I ran into errors while trying to updated the Android plugins; quite a few of the errors in the update log referred to messages such as "No repository found containing org.eclipse.mxunit/osgi..."  Most of the messages referred to that osgi library, somehow. I thought that somehow I had some majorly screwed up libraries on my hands.</p>

<p>After searching, it turned out the problem and solution were relatively simple: update URLs should have trailing slashes at the end. Refer to <a href="http://www.digitalsanctuary.com/tech-blog/general/no-repository-found-containing-error-when-update-eclipse.html">this blog post</a> for the specific solution. If anyone else runs into update issues because you're inspired by Ray's work, I hope this solution is helpful to you.</p>]]>
      
   </content>
</entry>

<entry>
   <title>Know a teacher? Introduce them to ClassroomWindow</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/10/know_a_teacher_introduce_them_to_classroomwindow.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.307</id>
   
   <published>2011-10-28T13:54:31Z</published>
   <updated>2011-10-28T14:10:24Z</updated>
   
   <summary>A good friend of mine, Kirby Salerno, just launched a new business called Classroom Window that aims to democritize the process of evaluating educational textbooks and resources. It&apos;s an incredible idea, and I want to help spread the word. Here&apos;s...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Life" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="ClassroomWindow" src="http://classroomwindow.com/wp-content/themes/classroomwindow/assets/images/common/header_logo.png" class="mt-image-right" style="float: right; margin: 0 0 20px 20px;" /></span>A good friend of mine, Kirby Salerno, just launched a new business called <a href="http://www.classroomwindow.com">Classroom Window</a> that aims to democritize the process of evaluating educational textbooks and resources. It's an incredible idea, and I want to help spread the word. Here's how Kirby puts it:</p>

<blockquote>"ClassroomWindow addresses an absolutely critical missing element in education -- understanding what works, and for which kids. Sounds obvious, but it doesn't exist (yet).  Our mission is to provide transparency into the effectiveness of educational texts, tools, and resources.  It is Yelp + Consumer Reports for education products and services, combining crowd-sourced input from teachers and others on the front-lines of education with expert opinion and student data."</blockquote>

<p>ClassroomWindow is preparing for a private beta later this year. If you or others you know (teachers in particular) would like to have their voices heard on which products work and which don't, please sign up for the beta at <a href="http://www.classroomwindow.com">www.classroomwindow.com</a>, <a href="http://www.facebook.com/pages/ClassroomWindow/232562360111499">check them out on Facebook</a>, and <a href="https://twitter.com/Power2Teachers">follow them on Twitter.</a></p>]]>
      
   </content>
</entry>

<entry>
   <title>Slides/materials from Boston CFUG&apos;s meeting on Continuous Integration (CI)</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/10/slidesmaterials_from_boston_cfugs_meeting_on_conti.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.305</id>
   
   <published>2011-10-27T19:04:00Z</published>
   <updated>2011-10-27T20:01:09Z</updated>
   
   <summary>I want to thank Marc Esher for a great presentation last night on how to install, configure, and use Jenkins and ANT to provide continuous integration in your development environment. I&apos;ve wanted to get a build system up and running...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="Jenkins" src="http://jenkins-ci.org/sites/default/files/jenkins_logo.png" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></span>I want to thank Marc Esher for a great presentation last night on how to install, configure, and use Jenkins and ANT to provide continuous integration in your development environment. I've wanted to get a build system up and running here at Ping for a while, and now I feel as if I know exactly how to start. (I did install them today, as a matter of fact.)</p>

<p>For those of you who, like me, want to refer to Marc's slides to set up your own CI system, you can find his presentation files here:<br />
<a href="http://wiki.mxunit.org/display/default/CFObjective+2011+--+Continuous+Integration">http://wiki.mxunit.org/display/default/CFObjective+2011+--+Continuous+Integration</a></p>]]>
      
   </content>
</entry>

<entry>
   <title>Boston CFUG&apos;s October meeting: &quot;Continuous Integration with Jenkins, ANT, and MXUnit&quot;</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/10/boston_cfugs_october_meeting_continuous_integratio.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.304</id>
   
   <published>2011-10-12T21:22:36Z</published>
   <updated>2011-10-12T21:29:14Z</updated>
   
   <summary>This month we&apos;ve got a great presentation lined up for the Boston area ColdFusion User Group on Wednesday, October 26th, 6:00pm: Continuous Integration with Jenkins, ANT, and MXUnit, a talk given by the always-entertaining Marc Esher. Here&apos;s what Marc has...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="ColdFusion" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Office Life" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>This month we've got a great presentation lined up for the Boston area ColdFusion User Group on Wednesday, October 26th, 6:00pm: Continuous Integration with Jenkins, ANT, and MXUnit, a talk given by the always-entertaining Marc Esher.  Here's what Marc has to say about his agenda:</p>

<blockquote>"Perhaps you have some unit tests. Maybe even an ANT build file that runs your tests. And maybe even a build file that packages or deploys your application. But how do you orchestrate those separate pieces into a symphony of automation? Continuous Integration, of course.<br />
 <br />
Imagine: you have tests. A Teammate commits code to source control. Minutes later, you and your teammate get an email indicating that tests are now failing.<br />
 <br />
Imagine: you commit code. Minutes later, all tests run. All tests pass. Zip files are built and are ready for deployment. Or code was automatically pushed to any accessible environment. All without your intervention."</blockquote>
 
<p>In this session, Marc will demonstrate how to use the open source Jenkins Continuous Integration server, together with ANT and MXUnit, to create a top-notch automated test and build system for your ColdFusion applications.</p>

<p>The meeting will be at 6:00pm at the Sun Life offices in Wellesley.  You can RSVP at <a href="http://bostoncfug-oct2011.eventbrite.com">http://bostoncfug-oct2011.eventbrite.com.</a> Drinks at Dunn-Gaherin's afterward!</p>]]>
      
   </content>
</entry>

<entry>
   <title>Standford University Technical Style Guide</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/08/standford_university_technical_style_guide.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.303</id>
   
   <published>2011-08-31T20:06:05Z</published>
   <updated>2011-08-31T20:22:12Z</updated>
   
   <summary>Check out this technical style guide from Stanford University&apos;s IT department. Not only is it a guide to the CSS selectors that Stanford uses, but it helps to enforce consistent HTML code by different developers. One smart technique displayed in...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Web Design" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Web Development" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="XHTML/CSS" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p><a href="http://itservices.stanford.edu/service/web/design/styleguide/modern"><img src="http://media.netmagazine.com/files/images/2011/08/scott-lenger-img3.jpg" style="width: 240px; float: right; margin-left: 20px;" alt="" border="0" /></a>Check out this <a href="http://itservices.stanford.edu/service/web/design/styleguide/modern">technical style guide from Stanford University's IT department</a>. Not only is it a guide to the CSS selectors that Stanford uses, but it helps to enforce consistent HTML code by different developers. One smart technique displayed in the document is the display of styled content right along side of the HTML that produced it.</p>

<p><em>Via <a href="http://www.netmagazine.com/node/1355">.net magazine</a></em></p>]]>
      
   </content>
</entry>

<entry>
   <title>Great new features lined up for stylesheets, but don&apos;t forget CSS variables</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/08/great_new_features_lined_up_for_stylesheets_but_do.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.302</id>
   
   <published>2011-08-09T17:23:46Z</published>
   <updated>2011-08-09T17:52:20Z</updated>
   
   <summary>.net magazine has a great article on some of the next-gen features being worked on in CSS: columns, flexible boxes, grids, templates, positioned floats, exclusions, and regions. There&apos;s one thing they left out, though: CSS variables. Implementation of variables would...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="XHTML/CSS" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>.net magazine has a great article on some of the next-gen features being worked on in CSS: columns, flexible boxes, grids, templates, positioned floats, exclusions, and regions. There's one thing they left out, though: <a href="http://brajeshwar.com/2008/css-variables/">CSS variables</a>. Implementation of variables would make it so easy to keep colors separated from layout in CSS files, and it would make changing common values (colors, padding, fonts, etc.) so much easier during development. Here's an example of how they would work:</p>

<p><pre><code>@variables { elementcolor: black; }
#selector1 { color: var(elementcolor); }
#selector2 { color: var(elementcolor); }
#selector3 { color: var(elementcolor); }
</code></pre></p>

<p>I can't believe there are people who say that CSS variables aren't needed or wouldn't be useful. These folks tend to have two arguments:

<ul>
<li><em>Variables make CSS too complex, and more like a programming language.</em><br />
I disagree with this one heartily. Variables would only make CSS more like a programming language <em>if the developer felt like using them</em>. If someone didn't want to use variables, the wouldn't need to touch them. And, what's wrong with letting a language evolve? HTML certainly has, and it's gotten more like a programming language since it came into widespread use.</li>
<li><em>You don't need variables if you use your selectors correctly.</em><br />
This is a better argument. It's the idea that you'd have a bunch of selectors all in one comma-delimited list with one declaration after it-- color, for example, or font-family. But that kind of arrangement seems almost as contrived and complex as the use of variables. Variables, at least, let you organize your declarations where you want them, instead of forcing you to separate them in a predetermined manner.</li>
</ul>
</p>]]>
      
   </content>
</entry>

<entry>
   <title>Looking to hire junior- to mid-level web developer!</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/08/looking_to_hire_junior-_to_mid-level_web_developer.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.300</id>
   
   <published>2011-08-02T16:35:22Z</published>
   <updated>2011-08-02T16:55:08Z</updated>
   
   <summary>Would you like to work for a fun, successful, and growing company from either Boston or Denver? Are you a good problem-solver who&apos;s not afraid to learn new technologies, APIs, and languages in order to complete a project? Then I&apos;d...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Office Life" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Web Development" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="Ping Identity" src="https://www.pingidentity.com/images/ping-logo.png" width="138" height="134" class="mt-image-right" style="float: right; margin: 0 0 20px 20px;" /></span>Would you like to work for a fun, successful, and growing company from either Boston or Denver? Are you a good problem-solver who's not afraid to learn new technologies, APIs, and languages in order to complete a project? Then I'd like to talk to you.</p>

<p>At Ping Identity, our company has been growing non-stop for the last two years, and the scale and number of web projects has grown along with our headcount. So, we need a third web developer to join our team. Bring your current skills, and we'd be happy to teach you new ones as well. Benefits are great, the work environment is fun (though you're able to work from home two to three days a week if you like), and the bonus structure is mighty fine.</p>

<p>If you're interested, please <a href="mailto:tom@mollerus.net&subject=Web developer position at Ping Identity">send your resume directly to me</a> so that I can personally promote it to HR. For specifics, please check out our <a href="https://www.pingidentity.com/about-us/career-detail.cfm?customel_datapageid_1441=53112">job posting for the web developer position: <br />https://www.pingidentity.com/about-us/career-detail.cfm?customel_datapageid_1441=53112</a></p>]]>
      
   </content>
</entry>

<entry>
   <title>Easily find images with unspecified width or height</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/08/easily_find_images_with_unspecified_width_or_heigh.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.299</id>
   
   <published>2011-08-01T15:29:52Z</published>
   <updated>2011-08-01T15:33:27Z</updated>
   
   <summary>This tip from 37 Signals&apos; Signal vs. Noise blog is so good I have to pass it on: you can find all image tags that are missing a width or height attribute by embedding a simple CSS selector in your...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Web Development" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="XHTML/CSS" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>This tip from 37 Signals' Signal vs. Noise blog is so good I have to pass it on: you can <a href="http://37signals.com/svn/posts/2979-css-tip-spot-unsized-images-during-development">find all image tags that are missing a width or height attribute</a> by embedding a simple CSS selector in your development stylesheet:</p>

<p><pre><code>img:not([width]):not([height]) {
  border: 2px solid red !important;
}</code></pre></p>]]>
      
   </content>
</entry>

<entry>
   <title>Chromebook Experiment results</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/08/chromebook_experiment_results_a_starter_how-to.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.298</id>
   
   <published>2011-08-01T13:00:26Z</published>
   <updated>2011-08-01T15:25:02Z</updated>
   
   <summary>Last Friday, I tried to use nothing but my new Chromebook to get my work done as a web developer here at Ping Identity. It was a way of asking, &quot;Can we live &apos;life through a browser&apos;?&quot; Just as I...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="At Large" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>Last Friday, I tried to <a href="http://www.mollerus.net/tom/blog/2011/07/the_chromebook_experiment_-_life_through_a_browser.html">use nothing but my new Chromebook to get my work done</a> as a web developer here at Ping Identity. It was a way of asking, "Can we live 'life through a browser'?"</p>

<p>Just as I anticipated, there was a lot that I could accomplish soley through a browser,  some significant things that I can't yet do on a Chromebook, and, notably, some tasks I chose not to do, mostly for security. I think that most of those issues can be overcome in the future. Here's a list of what I could and couldn't do:</p>

<p>
<strong>What I could do</strong>
<ul>
<li>Email</li>
<li>Calendar</li>
<li>IM</li>
<li>Writing blog entries</li>
<li>Salesforce CRM</li>
<li>Taking notes (Evernote, Scratchpad)</li>
<li>SSH (aka Telnet)</li>
<li>Calculator</li>
<li>Phone calls (Google Talk)</li>
<li>Video calls (Google Talk)</li>
<li>Banking</li>
</ul></p>

<p>
<strong>What I chose not to do*</strong>
<ul>
<li>Code editing</li>
<li>FTP</li>
<li>Versioning</li>
</ul></p>

<p>
<strong>What I couldn't do</strong>
<ul>
<li>Use our FF/IE-only content management system (CMS)</li>
<li>Perform browser testing (of course)</li>
<li>Participate in Webex meetings (requires application installation)</li>
<li>Use our office phone system software (Cisco "CUPs")</li>
</ul></p>

<p>* So why did I choose <em>not</em> to edit code or use FTP on my Chromebook? The answer is that to do so, I'd need to have my source files and FTP credentials stored somewhere in the cloud, which is definitely neither good sense nor compliant with our corporate security policy. I'll start using these on my Chromebook once I can run a web-based code editor, FTP client, and SVN client on our own servers so code and credentials never leave our network.</p>]]>
      
   </content>
</entry>

<entry>
   <title>The Chromebook experiment - Life through a browser</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/07/the_chromebook_experiment_-_life_through_a_browser.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.297</id>
   
   <published>2011-07-22T13:59:40Z</published>
   <updated>2011-07-22T15:01:37Z</updated>
   
   <summary>Life through a browser&quot; is the prophetic slogan of Mindseye, company I used to work for over 10 years ago. Unfortunately for them, the concept seems to be longer-lived than they. Mindseye&apos;s no longer operating, so far as I know,...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="At Large" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p><img src="http://www.google.com/chromebook/static/images/spotlight-samsung-duo.png" width="250" height="140" style="float: right; padding-left: 12px;" />Life through a browser" is the prophetic slogan of <a href="http://www.mindseye.com/">Mindseye</a>, company I used to work for over 10 years ago. Unfortunately for them, the concept seems to be longer-lived than they. Mindseye's no longer operating, so far as I know, but the idea that more and more of our daily work and personal interactions will take place online is one that many companies are betting on. One such bet is <a href="http://www.google.com/chromebook/">Google's Chromebook</a>-- a <a href="http://youtu.be/TVqe8ieqz10">computer-like object in a laptop form-factor</a> that runs <em>nothing but the Chrome browser</em>.</p>

<p>Google's pitch to users is "Chromebooks are built and optimized for the web, where you already spend most of your computing time. So you get a faster, simpler and more secure experience without all the headaches of ordinary computers." I was pretty curious to see whether this premise was true, and now that I've taken delivery of my own Chromebook, I have the perfect chance to find out: just how much of my work can I perform completely through a browser?</p>

<p>I'll report on what I find later today, but my guess is that while I'll be able to spend the bulk of my time on the Chromebook (email, chat, web browsing), my most important tasks (editing code and FTPing files) will still need to happen via applications on my MacBook Pro laptop.</p>]]>
      
   </content>
</entry>

<entry>
   <title>CSS Regions</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/07/css_regions.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.296</id>
   
   <published>2011-07-20T15:19:23Z</published>
   <updated>2011-07-20T15:31:16Z</updated>
   
   <summary>I just noticed the post on Ben Forta&apos;s blog about CSS regions, which has been submitted to the W3C as a working draft. The video demonstrates what an excellent concept regions are; content flows between columns automatically as a page...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="XHTML/CSS" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p>I just noticed the <a href="http://forta.com/blog/index.cfm/2011/7/20/CSS-Regions-Working-Draft-And-Video">post on Ben Forta's blog about CSS regions</a>, which has been submitted to the W3C as a working draft.  The video demonstrates what an excellent concept regions are; content flows <em>between columns</em> automatically as a page is resized, and not only does content flow within irregular shapes, such as within diamonds or around curved background photos, but it also happens as the page is resized or as the page scrolls. Hallelujah! We've been waiting for this to be implemented for the last decade!  I can only hope that it gets approved and implemented by browser makers soon.</p>

<p><object style="height: 390px; width: 640px"><param name="movie" value="http://www.youtube.com/v/SEdC2V9TTYs?version=3"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://www.youtube.com/v/SEdC2V9TTYs?version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="390"></object></p>]]>
      
   </content>
</entry>

<entry>
   <title>Findings from the ALA 2010 Web Design Survey</title>
   <link rel="alternate" type="text/html" href="http://www.mollerus.net/tom/blog/2011/06/findings_from_the_ala_web_design_survey_2010.html" />
   <id>tag:www.mollerus.net,2011:/tom/blog//1.295</id>
   
   <published>2011-06-24T16:06:31Z</published>
   <updated>2011-06-24T16:14:07Z</updated>
   
   <summary>The results are finally in for the ALA 2010 Web Design Survey. Hopefully some of you who were generous enough to take the time to fill out the survey, which I help promote since A List Apart&apos;s survey is the...</summary>
   <author>
      <name>Tom Mollerus</name>
      <uri>http://www.mollerus.net/tom/blog/</uri>
   </author>
   
      <category term="Office Life" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Web Design" scheme="http://www.sixapart.com/ns/types#category" />
   
      <category term="Web Development" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://www.mollerus.net/tom/blog/">
      <![CDATA[<p><a href="http://www.alistapart.com/articles/findings-from-the-web-design-survey-2010/">The results are finally in for the ALA 2010 Web Design Survey.</a> Hopefully some of you who were generous enough to take the time to fill out the survey, which <a href="http://www.mollerus.net/tom/blog/2010/10/participate_in_the_ala_2010_web_design_survey.html">I help promote</a> since <em>A List Apart</em>'s survey is the only chance for all of us to examine our own working demographic. It's really fascinating stuff: you can compare yourself to your peers across the metrics of working hours, age, salary, title, etc. Be sure to take a look.</p>]]>
      
   </content>
</entry>

</feed>

