1<!DOCTYPE html> 2<html> 3<head> 4 5<title>Welcome to Boutell.Com, Inc.!</title> 6<meta name="viewport" content="width=device-width, initial-scale=1" /> 7<link href="main.css" rel="stylesheet" type="text/css"> 8<link rel="SHORTCUT ICON" href="/favicon.ico"> 9 10
11<script type="text/javascript"> 12 13 var _gaq = _gaq || []; 14 _gaq.push(['_setAccount', 'UA-16435450-1']); 15 _gaq.push(['_trackPageview']); 16 17 (function() { 18 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 19 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 20 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 21 })(); 22 23</script>
23 24</head> 25<!-- SEARCH-ENGINE-OFF --> 26<body> 27<div class="toplayout"> 28<div class="home"> 29<!-- <a href="https://www.boutell.com/"><img border="0" width="298" height="47" src="/boutellcomlogo.png"></a> --> 30</div> 31<div class="layout"> 32<div id="menu" class="nav"> 33<div class="cmenu"><img align="bottom" width=8 height=8 src="/brightcircle.png"> <a href="https://www.boutell.com/" class="lcmenu">Home</a></div> 34<div class="menu"><img align="bottom" width=8 height=8 src="/rightarrow.png"> <a href="https://www.boutell.com/products.html" class="lmenu">Products</a></div> 35<div class="menu"><img align="bottom" width=8 height=8 src="/rightarrow.png"> <a href="https://www.boutell.com/freeware.html" class="lmenu">Open Source</a></div> 36<div class="menu"><img align="bottom" width=8 height=8 src="/rightarrow.png"> <a href="https://www.boutell.com/information.html" class="lmenu">Web Tech</a></div> 37<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/secure" class="lmenu">Online Store</a></div> 38<div class="menu"><img align="bottom" width=8 height=8 src="/rightarrow.png"> <a href="https://www.boutell.com/entertainment.html" class="lmenu">Fun</a></div> 39<div class="menu"><img align="bottom" width=8 height=8 src="/rightarrow.png"> <a href="https://www.boutell.com/philly" class="lmenu">Philadelphia</a></div> 40<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/advertise.html" class="lmenu">Advertising</a></div> 41<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/search.cgi" class="lmenu">Search</a></div> 42<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/privacy.html" class="lmenu">Privacy</a></div> 43<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/whom.html" class="lmenu">About Us</a></div> 44<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/consulting.html" class="lmenu">Consulting</a></div> 45<div class="menu"><img align="bottom" width=8 height=8 src="/circle.png"> <a href="https://www.boutell.com/contact" class="lmenu">Contact</a></div> 46</div> 47<div class="contentbase"> 48<div class="buttonsbox"> 49<h1 class="textlogo"> 50<a href="/">Boutell.Com</a> 51</h1> 52<a id="menu-toggle" href="#"><span class="hamburger">â¡</span> Menu</a> 53<div class="printing"> 54<a class="lmenu" href="/cgi-bin/printable.cgi?url=https://www.boutell.com/">Format for Printing</a> 55</div> 56</div> 57<div class="crumbbox"> 58 <div class="crumbs"><a class="lmenu" href="/">Home</a></div> 59</div> 60<div class="titlebox"> 61<h2 class="title"> 62<span style="font-size: 22px; 63line-height: 46px"> 64Welcome to Boutell.Com, Inc.!</span></h2> 65</div> 66<div class="content"> 67<!--BCOM-BODY-BEGIN--> 68<br> 69<!-- SEARCH-ENGINE-ON --> 70 71<!-- Google Adsense -->
72<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
72 73<!-- responsive --> 74<ins class="adsbygoogle" 75 style="display:block" 76 data-ad-client="ca-pub-1348807132701672" 77 data-ad-slot="2995196926" 78 data-ad-format="auto"></ins>
79<script> 80(adsbygoogle = window.adsbygoogle || []).push({}); 81</script>
81 82<div class="after-ad"></div> 83Boutell.Com publishes 84<a href="/newfaq/">articles about the workings of the World Wide Web</a>, 85<a href="freeware.html">open source tools</a>, 86<a href="products.html">shareware products</a> and more. 87It is the home of the <a href="/newfaq/">World Wide Web FAQ</a> 88by Tom Boutell, author of the original 1994 WWW FAQ that gave many 89of today's web pros their start. 90<p> 91What follows is a short list of more recent projects by Tom Boutell. 92<p> 93<b><a href="https://www.youtube.com/watch?v=1xegzkBBmLw">September 30th, 2016: Object Oriented Functional Programming at LibertyJS</a></b> 94</p> 95<p> 96Object Oriented Functional Programming is a JavaScript technique that brings 97the code reuse of object-oriented programming back together with the 98high-level convenience of functional programming. Watch Tom's talk at 99LibertyJS 2016. Also check out the <a href="https://github.com/punkave/libertyjs-oofp">code examples</a>. 100</p> 101<iframe style="margin: auto" width="560" height="315" src="https://www.youtube.com/embed/1xegzkBBmLw" frameborder="0" allowfullscreen></iframe> 102<p> 103<b><a href="http://apostrophecms.org/">September 29th, 2016: Apostrophe CMS 2.x LTS released</a></b> 104</p> 105<p> 106Apostrophe is an open-source, contextual content management system 107written in pure JavaScript, thanks to NodeJS. Tom Boutell is the lead developer 108of Apostrophe at <a href="http://punkave.com">P'unk Avenue</a>. 109</p> 110<p> 111<b><a href="http://searchvision.boutell.com">February 11th, 2014: See Your Website The Way Google And Bing Would</a></b> 112</p> 113<p> 114<em>An organic SEO tool</em> 115</p> 116<p> 117<a href="http://searchvision.boutell.com/"><img src="/images/searchvision.png" style="width: 100%" /></a> 118</p> 119<p> 120SearchVision is handy for all of us who wonder what our websites really 121look like to search engines like Google and Bing. By stripping out everything 122that search engines usually ignore, I give you a dose of 123organic SEO reality. You can follow links to explore your site the way 124a search engine might... but only if you built it right! 125</p> 126<p> 127<b><a href="http://justjs.com">May 14th, 2012: Node Makes Web Development Exciting Again!</a></b> 128</p> 129<p> 130I've just launched <a href="http://justjs.com">justjs.com</a>, a blog about 131all-JavaScript web development. Leveraging node.js (an incredibly extensible 132webserver written in JavaScript), mongodb (a database with a JavaScript 133query language) and other JS-based development tools, I'll show how to 134do serious web development without constantly shifting between languages 135and reap the performance benefits of Google's super-fast v8 JavaScript 136engine. 137</p> 138<p> 139<b><a href="http://www.apostrophenow.com">February 26th, 2012: Build your website the easy way with Apostrophe</a></b> 140</p> 141<div> 142<a href="http://www.apostrophenow.com"><img src="/images/apostrophenow.png" /></a> 143</div> 144<p> 145I am immensely proud of my work on <a href="http://www.apostrophenow.com/">Apostrophe</a> at <a href="http://punkave.com/">P'unk Avenue</a>. Apostrophe makes it spectacularly easy to build a website. And there's a great free plan to get started with. If learning the ins and outs of HTML and CSS is not your bag, or you'd just like your clients to be able to edit their sites without a lot of handholding, you should definitely check it out. 146</p> 147<p> 148<b><a href="/seeoverme">June 12th, 2011: seeoverme offers short-range video without the need for 3G or Wifi</a></b> 149</p> 150<div class="float"> 151<a href="/seeoverme"><img style="width: 250px" src="/seeoverme/screenshot.png" /></a> 152</div> 153<div class="near-float"> 154seeoverme transmits video via Bluetooth– a short-range networking 155technology built into your iPhone that doesn't affect your 3G bandwidth 156limit and doesn't require a cell tower or wifi hotspot to be nearby. 157With a range of 30 feet, seeoverme makes a great periscope for seeing 158over and around other people at concerts and parades. 159<a href="/seeoverme/">Learn more about seeoverme</a>. 160</div> 161</div> 162<div> 163Convert video to animated GIF right on your iPhone! 164<p> 165Tom Boutell's latest iPhone app. Post your GIF via Tumblr, send it via email or copy the link to your clipboard and do as you please. Hosting is included. Convert existing videos or create new ones. The GIF blogs will never know what hit 'em. 166<a href="http://figgif.com/">Learn more on figgif.com</a>. 167</div> 168<br style="clear: left" /> 169<p> 170<b><a href="http://whatshallwe.com/">December 2nd, 2010: What Shall We helps you plan good times with friends</a></b> 171</p> 172<div style="background-color: #EFE; 173font-family: Helvetica; 174border: 2px solid #CFC; 175font-size: 40px; 176margin-bottom: 35px; 177margin-top: 35x; 178padding-top: 20px; 179padding-bottom: 20px; 180width: 100%; 181margin-left: auto; 182margin-right: auto; 183text-align: center;"> 184<a style="color: #040" href="http://whatshallwe.com/">What Shall We...</a> 185</div> 186<p> 187<em>Where shall we eat tonight?</em> 188</p> 189<p> 190<em>What time should we meet?</em> 191</p> 192<p> 193<em>What movie should we see?</em> 194</p> 195Boutell's latest web application. Tired of playing cruise director? <strong><a href="http://whatshallwe.com/">What Shall We...</a></strong> lets your friends suggest options and vote them up or down. Sharing questions via Facebook or Twitter makes it even easier (not required— you can use it with your office coworkers too). Seeing others respond in real time helps everyone reach consensus fast. Just send out a link and watch the results! 196<p> 197<b><a href="/iphone/syncandspeak/">June 16th, 2009: Sync and Speak reads your RSS and Twitter feeds aloud on the iPhone</a></b> 198<p> 199Our first iPhone application, <a href="/iphone/syncandspeak/">Sync and Speak</a> 200reads Twitter updates and RSS feeds out loud. Great for commuters and other 201travelers who have a need to keep their hands and eyes free. 202<p> 203<b><a href="http://5seven5.com/">December 10th, 2008: 5seven5... the social network for haiku poets</a></b> 204<p> 205<a href="http://5seven5.com/">5seven5.com</a> is a social network for 206for haiku poets and their poetry. Share and give feedback on haiku in a 207<a href="http://www.twitter.com/">twitter</a>-like environment with 208dynamic voting, follow lists and RSS feeds. Built with 209<a href="http://www.symfony-project.org/">Symfony</a>, 5seven5 210was the test site for 211<a href="http://www.symfony-project.org/plugins/sfApplyPlugin">sfApplyPlugin</a>. 212</p> 213<p> 214<b><a href="http://salsadelphia.com/">November 1st, 2008: salsadelphia.com offers an up-to-date overview of the Philadelphia salsa scene</a></b> 215<p> 216<a href="http://salsadelphia.com/">Salsadelphia</a> is a regularly updated 217directory of salsa hotspots in the Philadelphia area. Built with 218<a href="http://www.symfony-project.org/">Symfony</a>, Salsadelphia provides 219a perpetual calendar of upcoming events, with convenient filters to 220display only the events of interest to you. Community-building features 221such as event photos are slated to arrive soon. 222<p> 223<b><a href="http://septime.org/">June 11th, 2008: septime.org provides convenient transit schedules via web-enabled phones</a></b> 224<p> 225<a href="http://septime.org/">septime.org</a> provides information about the 226next five departures from any stop mentioned in 227<a href="http://www.septa.org/">SEPTA</a>'s online schedules. 228<p> 229septime.org formats its output in a way that even the simplest of Internet-en
229abled 230cell phones and similar devices can handle. 231<p> 232The schedule data has also been made available in XML format for those who 233would like to build other useful SEPTA-related web sites. See the 234<a href="http://septime.org/about.php">septime.org about page</a> for 235more information. 236<p> 237<b><a href="http://www.punkave.com/">March 18th, 2008: Thomas Boutell joins P'unk Avenue</a></b> 238<p> 239Thomas Boutell has joined forces with 240<a href="http://www.punkave.com/">P'unk Avenue</a>, a Philadelphia-based 241web design agency with complementary skills and a similar commitment 242to the community. P'unk Avenue has built major interactive sites 243for Duke University and many other clients. P'unk Avenue makes extensive 244use of the cutting-edge 245<a href="http://www.symfony-project.org/">Symfony framework</a> for 246web development. 247<p> 248Naturally Boutell.Com will continue to grow as a 249source of information, and support for Boutell's existing products will 250continue to be offered. 251<p> 252<b><a href="http://apps.facebook.com/freefor/">February 5th, 2008: Boutell releases I'm Free 4, a social calendar for Facebook</a></b> 253<p> 254I'm Free 4 makes it easy to let friends know when you're free for a meal 255or an evening out... then match your calendar to those of your friends 256to discover the best times to get together. I'm Free 4 employs 257AJAX, PHP, FBML, FBJS and SQL to create a unique Facebook experience. 258<p> 259<b><a href="http://apps.facebook.com/supergroupapp/">January 26th, 2008: Supergroup, Join My Band and LOLlograms are Boutell's First Facebook Applications</a></b> 260<p> 261<a href="http://www.facebook.com/">Facebook's</a> open API for the creation 262of third-party applications is fantastic and we're excited about it. 263Our <a href="http://apps.facebook.com/supergroupapp/">Supergroup</a> 264application allows users to create their own fantasy rock bands. 265Our <a href="http://apps.facebook.com/joinmyband/">Join My Band</a> 266is for musicians and singers who want to start <i>real</i> bands where 267they live. And <a href="http://apps.facebook.com/lollograms/">LOLlograms</a> 268is good, silly fun for everyone. All three 269demonstrate our Facebook application development skills. 270<a href="/contact/">Contact us</a> with your Facebook development needs! 271<p> 272<b><a href="/accountify/">December 17th, 2007: Accountify 2.0 Adds Accounts To PHP Websites</a></b> 273<p> 274Our <a href="/accountify/">Accountify</a> package makes it easy to add accounts to any website. Accountify is a practical, open-source solution for those 275who want to retain user information from one website visit to the next. 276Accountify extends PHP's built-in 277session mechanism to support long-term information storage. Recent updates 278have added support for invitation management and for customization of the 279account creation and preference editing process, allowing webmasters to 280gather their own site-specific information. 281<p> 282<b><a href="/supportmelive/">November 8th, 2007: SupportMeLive 1.1 Adds Live Chats With Support To Any Site</a></b> 283<p> 284<a href="/supportmelive/">SupportMeLive</a> is an easy way to invite your 285users to chat with you live on your web site. Provide technical and sales 286support or just shoot the breeze with your web site visitors. SupportMeLive 287began life as a demonstration piece for the 288<a href="/newfaq/">WWW FAQ</a> and grew into a simple but solid package 289for providing live support on small and medium-sized web sites. 290<p> 291<b><a href="http://www.boutell.com/mapedit/news.html">October 12th, 2007: Mapedit 4.0 Greatly Enhances Imagemap Editing</a></b> 292<p> 293Our <a href="http://www.boutell.com/mapedit">Mapedit</a> software, long 294the most user-friendly imagemap editor available, is now the most complete 295as well. Mapedit 4.0's new features include hotspot alignment, multiple 296documents, multiple-hotspot and multiple-point selections, an improved 297insert-point feature, "crisp-angle" polygon edge drawing and a great 298deal more. Visit the <a href="http://www.boutell.com/mapedit/news.html">Mapedit 299news page</a> for more information. 300<p> 301<a href="http://www.boutell.com/newfaq/creating/captcha.html"> 302<strong>February 22nd, 2007: Boutell CAPTCHA Released</strong> 303</a> 304<p> 305CAPTCHA systems allow websites to distinguish between human visitors 306and automated attacks. Our CAPTCHA system is a straightforward, 307developer-friendly, open-source solution easily plugged into any 308PHP-based web form. Our solution includes a high-quality 309audio CAPTCHA for vision-impaired users. See the WWW FAQ article 310<a href="http://www.boutell.com/newfaq/creating/captcha.html">
310how do I add 311a CAPTCHA to my web page?</a> for complete details. 312<p> 313<a href="http://www.amazon.com/exec/obidos/ISBN=0782144284/boutellcomincA/"> 314<strong>19 September 2005: <i>Windows and Linux Integration</i> Published</strong> 315</a> 316<p> 317Tom Boutell is the co-author of <i>Windows and Linux Integration: Hands-on 318Solutions for a Mixed Environment</i>. A practical, hands-on guide to 319getting the most from Windows and Linux in the same enterprise. Covers 320authentication, printing, file sharing, email integration, desktop 321integration, web application development and more. 322<a href="http://www.amazon.com/exec/obidos/ISBN=0782144284/boutellcomincA/">Available now on amazon.com</a> and at your local bookstore! Updates, tips, 323web-only exclusive extras and discussion forums are available at 324<a href="http://www.winlinanswers.com/">winlinanswers.com</a>. 325 326 327<!-- SEARCH-ENGINE-OFF --> 328<!--BCOM-BODY-END--> 329<footer> 330<p> 331<a href="http://twitter.com/boutell">Follow us on Twitter</a> | <a href="/contact">Contact Us</a> 332</p> 333<p> 334Copyright 1994-2016 Boutell.Com, Inc. All Rights Reserved. 335</p> 336</footer> 337</div>
338<script> 339 var bName = navigator.appName; 340 var bVer = parseInt(navigator.appVersion); 341 var ver; 342 if (bName == "Netscape" && bVer >= 4) { 343 ver = 4; 344 } else if (bName == "Microsoft Internet Explorer" && bVer >= 4) { 345 ver = 4; 346 } else { 347 ver = 0; 348 } 349 if (ver >= 4) { 350 document.write('<img width=1 height=1 src="/wusage_screen_properties.gif?' + 351 'width=' + screen.width + '&' + 352 'height=' + screen.height + '&' + 353 'depth=' + screen.colorDepth + '">'); 354 document.writeln(); 355 document.writeln('<br>'); 356 } 357</script>
357 358</div> 359</div> 360</div>
361<script> 362(function() { 363 var menuToggle = document.getElementById('menu-toggle'); 364 var menu = document.getElementById('menu'); 365 menuToggle.addEventListener('click', function(e) { 366 if (e.preventDefault) { 367 e.preventDefault(); 368 } 369 if (menu.style.display === 'block') { 370 menu.style.display = 'none'; 371 } else { 372 menu.style.display = 'block'; 373 } 374 }); 375})(); 376</script>
376 377</body> 378 379</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.