jtyost2 + webdevelopment   336

Dear ICO: This Is Why Web Developers Hate You
Dear ICO. On behalf of web developers everywhere, what the frolicking duck?

As the body responsible for policing the infamous Cookie Law in the UK, you don’t exactly have a popular job, to be fair.

A year ago you graciously granted us an extra year to comply with the law, announcing your decision just 24 hours before the law came into effect. Last week, 24 hours before the really-we-mean-it-this-time law took hold, you changed it completely.

Any web developer who actually tried to comply with the law in either case has been royally and totally screwed, for no reason other than your blithering incompetence. Thanks for that.

Curiously – and don’t think we haven’t noticed – a lot of big sites, like the BBC, Guardian, BT, Channel 4 etc. all revealed solutions which comply with your revised guidelines just prior to you announcing it. We assume you’ve enjoyed long and comfortable consultation periods with all of them, which you decided to share with us one sunny Friday morning a day before it becomes law. You know – the same lazy day everyone is making their solutions live.

Now you might say you’ve already spoken out publicly about what a light touch you’ve been aiming for, which is true. However anyone who’s been following the law for the past year can agree on one thing – no one had a bloody clue what they were meant to do. Not the Wall St Journal, or The Guardian, or WebTrends, or Adobe, or half-a-bazillion web devs. We’re been floundering in a wind of ignorance while the one body with the responsibly to clarify anything sat on their collective asses and changed their mind last minute.
programming  software  business  legal  WebDevelopment  from instapaper
2 days ago by jtyost2
Mobile set to surpass desktop and webmail email client usage by July
Use of mobile email clients is set to surpass desktop and webmail client usage by July, according to the results of a recent study by our friends at Return Path. After examining data from over 90 email clients, amounting for more than 130 million data points over a 6 month period, Return Path found that while webmail clients overall are on a slow decline, mobile views increased by 82.4% over the same period (March ‘11 – March ‘12). Mobile devices currently claim 16% of overall email client market share, with 85% of mobile email opens occurring on an Apple iOS device. This is comparable to our earlier findings.

Return Path also found that there is an uptick in mobile email readership during the weekend, which can be attributed to email recipients switching from the desktop to a smartphone outside of office hours. Conversely, it’s at its lowest on a Wednesday, when presumably folks are at their most busy tackling their Outlook, or OSX Mail inboxes.

The implications for email senders like you and I are fairly clear. As Tom at Return Path states in his summary:

“… those that aren’t tracking which device their subscribers are reading their emails on, or optimizing their emails or websites for mobile devices stand to lose out. A poor user experience could mean no response, no action, or plainly put, no ROI.”
If you aren’t already optimizing your emails for mobile, now is the time. To set you on the right path, we’ve got a practical primer on email design, not to mention a neat template builder which can whip together mobile-ready campaigns in a matter of minutes.
email  mobile  design  WebDesign  WebDevelopment  iOS  from instapaper
23 days ago by jtyost2
Why O, why? Thoughts on Opera's Implementation of WebKit's Prefixes — WebKitbits
So there you go. We have real problems, for both the browser vendors and the users.

If it isn’t already clear, I’m not a fan of this solution, and we’ve finally arrived at the crux of why: It is a short-sighted solution, primarily for the benefit of browser vendors, which contradicts an existing standard.
Mozilla  webkit  opera  MozillaFirefox  browsers  programming  software  WebDesign  WebDevelopment  standards  from instapaper
26 days ago by jtyost2
Scale Something: How Draw Something Rode Its Rocket Ship Of Growth (gamasutra.com)
I’ve worked at OMGPOP for almost four years now and have seen it transform from a dating company, a games company and then find its footing in mobile games. We’ve done tons of stuff, tried many different technologies and business plans.

I’ve always seen us as the little guy that can use fast prototyping, agile development, and the latest tech in order to gain an advantage. Also, being in the game world means you get to test out a lot of different ideas to see what sticks. In my time here, I’ve made avatar systems, a text adventure game engine, a full-featured mysql sharding library, a multiplayer real-time platformer built on our javascript game engine, an AIM bot system, a whole slew of chat room games powered by a bot framework we created, and tons more.

On the backend of all these games is a tiny systems team of three people — myself, Christopher Holt and Manchul Park. We built everything from scratch and thought we had our approach to building and scaling backend systems down pretty well. That was until Draw Something came along.
programming  scalability  WebDesign  WebDevelopment  from instapaper
5 weeks ago by jtyost2
Saving the Day with Scoped CSS
Over the last couple years HTML5 and CSS3 have rocked our worlds and the way we approach common website issues. Every few days it seems there is some new fangled snippet or approach that is a game changer. Today might just be another one of those days (kind of).

One little known feature of HTML5 is Scoped CSS. It’s an attribute for style blocks that may change the way we tackle certain styling challenges in the future.
html5  css3  css  html  webdesign  webdevelopment  programming 
6 weeks ago by jtyost2
CSS Hexagon Tutorial (github.com)
And that’s how we get a hexagon in CSS. The 30:52 ratio in the border widths is approximately 1:√3 which is ratio required for a hexagon.
CSS  WebDesign  WebDevelopment  programming  from instapaper
7 weeks ago by jtyost2
jQuery Credit Card Validator — Pawel Decowski
jQuery Credit Card Validator detects and validates credit card numbers. It’ll tell you the detected credit card type and whether the number length and Luhn checksum are valid for the type of card.
jquery  programming  webdesign  webdevelopment 
8 weeks ago by jtyost2
The CSS3 :not() selector • CSS & (X)HTML • Kilian Valkhof
There isn’t a lot of information to be found about the :not() selector. The specifications only offer 3 lines of text and a couple of examples. So lets see what it can do!

The Specification

The negation pseudo-class, :not(X), is a functional notation taking a simple selector […] as an argument. It represents an element that is not represented by the argument.

What it says here, is that a selector with a :not() in it will match all elements that do not match what’s between the parenthesis.

A simple selector is a term used in the specifications. A simple selector is: a single element, attribute selector, class, id or pseude-class.
css  css3  programming  webdesign  webdevelopment  software 
9 weeks ago by jtyost2
The End of Pagination
Above all else, you should strive to make pagination irrelevant because the user never has to look at more than a few items to find what they need . That’s why I suspect Google hasn’t done much with this technique in their core search result pages; if they aren’t providing great results on page 1, it doesn’t really matter what kind of pagination they use because they’re not going to be in business much longer. Take that lesson to heart: first present a relevant list of items to the user in a sensible order before worrying about your pagination scheme.
webdevelopment  webdesign  programming  software  usability  userexperince 
9 weeks ago by jtyost2
Rainbow - Javascript Code Syntax Highlighting
Rainbow is a code syntax highlighting library written in Javascript.
It was designed to be lightweight (1.2kb), easy to use, and extendable.
It is completely themable via CSS.
javascript  codehiglight  programming  webdesign  webdevelopment 
9 weeks ago by jtyost2
Paul Graham, the Commons, and How Google Stopped Being Google (theatlantic.com)
I’m not the first person to make this point, but there is an important lesson that I hope we take from this relatively minor tragedy: The aggregation of individual data does not a commons make.
google  searchengine  webdesign  webdevelopment  programming  software 
9 weeks ago by jtyost2
Pure CSS Clickable Events Without :target
Click on the drop downs above. That’s done all in CSS; no kind of javascript whatsoever. Pretty cool, eh? It’s a fun use of the :active and :hover selectors. You can browse the source code for the demo above here. If you’d like a more in-depth tutorial of how to accomplish this, continue reading.
css  dropdown  menu  clickevent  html  programming  webdesign  webdevelopment 
9 weeks ago by jtyost2
A Retina Display Reckoning for Magazine Publishers – Stuntbox
But there is one group that’s about to smack headlong into a reckoning, and that’s the publishers who’ve been using several popular device-specific app platforms to churn out print-like periodicals for the iPad.

The iOS apps created by systems from Adobe, Woodwing, Mag , and others—the platforms used by the bulk of traditional publishers to crank out their iPad magazines right now—are essentially collections of PDFs or JPGs exported out of programs like InDesign and bound inside a wrapper application. Basically, they boil down to pictures of layouts, photos, and text. Rather than create new rendering engines from scratch, these platforms rely on existing desktop applications to do that work, then package up the output. While faster to develop, this has negative consequences for the end user. You can’t resize text. File sizes are untenably large.

Now apply the volumetric increase in pixels that’s upon us, and it’s easy to see why the size of an average iPad magazine issue is about to go through the roof. Very roughly speaking, a single page of text built this way and saved using light JPG compression weighs in at around 150-350kB. At the new Retina dimensions these same app platforms will generate pages on the order of 2MB. That’s per page .

This isn’t just a question of the bandwidth these apps will devour while downloading issues, it’s also a question of whether or not a user can actually store these things anywhere. The screen volume may have quadrupled, but the new iPad still ships with the same three memory options: 16, 32, and 64GB. As I noted on Twitter , the growth rate of the potential payload size just outgrew the growth rate of device storage exponentially. Some publishers may be implicitly backing themselves into maintaining cloud-based storage for their users, since there’s no way the average reader could keep more than just a few of these things on their device at one time. (Remember, there’s lots of other things vying for that space.)

The question now before platform makers is whether they will begin exploring alternatives or will pass the pain along to users in the form of unsustainably large issue sizes. The three likely options on the table for them are: 1) Do nothing; 2) Start building dynamic layout and text rendering engines; or 3) Begin basing their platforms on Web technologies.

Doing nothing simply won’t cut it, as either they or the user will begin encountering problems too obvious to ignore (though I strongly suspect we’ll see it being done anyway for at least a little while). Building your own layout engine and the runtime environment to display it can be an extremely complicated endeavor. Just ask a browser maker…

And that brings us to the third option. An existing markup and layout technology that’s widely deployed, supported, and understood. That’s the Web. This doesn’t mean they necessarily have to shift to entirely Web-based delivery, either. Many of the most successful iOS (and Android) apps are actually hybrid apps in disguise, utilizing modified WebKit views to display information. Adobe has clearly started laying some groundwork for this . Why reinvent the wheel?
media  magazine  publishing  iPad  webdesign  webdevelopment  programming 
11 weeks ago by jtyost2
ongoing by Tim Bray · Network App Macroeconomics
The one thing in the big picture that I don’t see changing any time soon is the basic JSON-over-HTTP architecture of more or less every interesting business app. That at least insulates the moving target running on the server (NodeJS? Go?) from the moving target running on the client (Dart? B2G ?), and that has to be a good thing.
json  http  rest  programming  webdevelopment  api  mobile  technology 
february 2012 by jtyost2
Taras’ Blog » Blog Archive » PSA: DOM Local Storage considered harmful
Cry, rely on browser cache. There are no viable alternative at the moment. IndexedDB is complex, requires user to approve it and isn’t widely implemented. WebSQL is all about bringing SQLite problems we’ve been studying and fixing within Firefox to every single webpage.

My best guess is that we’ll end up with webdevs using convenience libraries built on top of IndexedDB. We will likely add promptless operation to IndexedDB.

We have already made Local Storage hurt less, we have a plan to make it relatively painless, but it will always degrade user experience when compared to something like IndexedDB.
localstorage  javascript  webdevelopment  programming  html5 
february 2012 by jtyost2
We need to kill off the localStorage API - Tales of a Developer Advocate
It is a failure of the web, browser vendors and developers that we are in this situation, but w e need to stop advocating for and building examples that use the LocalStorage API’s, it is simply not a scalable API and the more we build for it the harder it will be for us to ween ourselves off it.
LocalStorage has poor querying capabilities, terrible performance, small storage in many browsers, crazily inconsistent eventing and a nasty habit of locking. It’s saving grace is simple semantics and “browser support”.
Client-side and offline web-apps are not a reality with localStorage, and if we keep pushing it, we are never going to be in a situation where we have a compelling offline or client-side story.
We need to bite the bullet, move on and start building compelling apps, examples and demos build around IndexedDB, that is our only future (I am still aggrieved that the web dropped WebSQL, it was simple and familiar) and we need to do this by stopping to support localStorage. Period.
localstorage  html5  webdevelopment  programming  javascript 
february 2012 by jtyost2
Bylines for Web Articles?
Should you say who wrote the content on your site? Sometimes yes (for credibility), sometimes no (for brevity). And rarely in mobile.
webdesign  webdevelopment  writing  content  usabality  userexperince 
february 2012 by jtyost2
AskGeo | Latitude and Longitude to Time Zone Conversion Web API
AskGeo provides a simple, fast, and accurate Interactive Map, Web API and Java Library for finding out the time zone information for a given location (latitude and longitude). It's simple: you give latitude and longitude and the API returns the unix (Olson) time zone ID (e.g., "America/Chicago", "Europe/London"), the Windows Standard Name for the time zone (e.g., "Pacific Standard Time", "Central European Standard Time"), and the current offset from UTC.
api  geolocation  time  timezone  webdevelopment 
february 2012 by jtyost2
Google and Microsoft Cheat on Slow-Start. Should You? (benstrong.com)
It’s getting late, so I’ll wrap this up with a few thoughts:
Fast is good. I’m excited to see that sub-100ms page loads are possible, and it’s a shame to not be able to take full advantage of modern networks because of protocol limitations (http being the limiting protocol, btw).
Being non-standards-compliant in a way that privileges their flows relative to others seems more than a little hypocritical from a company that’s making such a fuss about network neutrality.
I’m not really qualified to render judgment on whether IW10 is a net positive, but after reading the discussion (and considering that the internet hasn’t actually melted down), I’m inclined to think that it is.
I’m pretty confident that turning off slow-start entirely, as Microsoft seems to be doing in my trace, is a very bad thing (maybe even a bug).
So, this leaves the question, what should I do in my app (and what should you do in yours)? Join the arms race or sit on the sidelines and let Google have all the page-load glory? I’ll let you know what I decide (and if I do it, I’ll be sure to let you know how it works out).
Google  Microsoft  technology  HTTP  standards  webdevelopment  sysadmin  server  TCP 
february 2012 by jtyost2
Responsive text
Some websites now contain 'responsive images'. These scale (or crop) depending upon your screen's viewing area, so the image sizes remain appropriate whether you're looking at the website on a mobile phone, or on a huge flat screen monitor.

This is an example of responsive text.

The amount of textual detail scales relative to your screen size.

The effect is achieved using simple HTML class names and CSS media queries which show or hide the content depending upon the current screen width.
webdesign  webdevelopment  programming  software  html  css  css3  design 
february 2012 by jtyost2
3.2 Elements — HTML Standard
The translate attribute is an enumerated attribute that is used to specify whether an element's attribute values and the values of its Text node children are to be translated when the page is localized, or whether to leave them unchanged.

The attribute's keywords are the empty string, yes, and no. The empty string and the yes keyword map to the yes state. The no keyword maps to the no state. In addition, there is a third state, the inherit state, which is the missing value default (and the invalid value default).
html  standards  webdesign  webdevelopment  programming 
february 2012 by jtyost2
Tinycon - Favicon Alerts
Tinycon allows the addition of alert bubbles and changing the favicon image. Tinycon gracefully falls back to a number in title approach for browers that don't support canvas or dynamic favicons.
Alerts in the favicon allow users to pin a tab and easily see if their attention is needed.
favicon  javascript  programming  webdevelopment  webdesign 
february 2012 by jtyost2
CSS Hierarchies Module Level 3
CSS is a language for describing the rendering of structured documents (such as HTML and XML) on screen, on paper, in speech, etc. This module contains the features of CSS level 3 relating to the hierarchical nesting of style rules. It includes and extends the functionality of CSS level 2 [CSS21], which builds on CSS level 1 [CSS1]. The main extension compared to level 2 is the ability to nest a style rule within another rule, allowing greater modularisation and readibility of CSS documents.
css  html  css3  w3c  standards  webdesign  webdevelopment  programming 
february 2012 by jtyost2
dangrossman/Bookmarkly - GitHub
Source of bookmarkly.com, a visual bookmarking site
javascript  nodejs  programming  webdevelopment 
february 2012 by jtyost2
Prevent Form Field Autocomplete
Preventing autocompletion of form fields is incredibly important since we never know where our users are completing them from. They could complete them from a super secure computer or an incredibly public computer. Regardless of security level, some field values should never be remembered, like credit card number, social security number, etc. Preventing autocompletion is as simple as adding one attribute to a FORM tag for individual form fields.
html5  html  security  programming  webdevelopment 
february 2012 by jtyost2
[whatwg] Requests for new elements for comments
We already have an element for comments and other self-contained document
modules, namely, <article>. The spec in fact specifically calls out an
<article> nested in another <article> as being, by definition, a comment
on the outer <article>.
html  html5  programming  webdesign  webdevelopment  WHATWG  w3c 
january 2012 by jtyost2
Starting Over | Get Real | Jason Fried | Inc.com
Think about a product’s life span. When something new is released to the public—and this is especially true of software—it’s hardly set in stone. You get feedback from customers and make modifications. You add features, refine existing ones, and make things better over time. If you really listen and do it right, the product earns its success.

But paradoxically, that success makes it harder to change. As time goes by, people get used to things the way they are. And the more someone is accustomed to doing something a certain way, the harder it is to ask him or her to change. When it comes to introducing ideas, the years have a way of boxing you in.

And that’s where we found ourselves with Basecamp—a successful product that was tough to change in major ways. Of course, it has evolved; over the years, we’ve made thousands of incremental improvements to the software. But now we have ideas that are more revolutionary than incremental. We think these ideas will dramatically enhance Basecamp’s speed, power, and flexibility.
software  usability  programming  userexperince  webdevelopment  webdesign 
january 2012 by jtyost2
Website outages and blackouts the right way (google.com)
Website outages and blackouts the right way
tl;dr: Use a 503 HTTP status code but read on for important details.

Sometimes webmasters want to take their site offline for a day or so, perhaps for server maintenance or as political protest. We’re currently seeing some recommendations being made about how to do this that have a high chance of hurting how Google sees these websites and so we wanted to give you a quick how-to guide based on our current recommendations.
seo  programming  webdesign  webdevelopment  google  searchengines 
january 2012 by jtyost2
On the Usability of Codecademy (programmingzen.com)
At that point I suspended this tiny hallway test and I asked her what she thought of this system. She found the site to be a bit unintuitive, but above all felt like she didn’t know how to get unstuck when she made an error.

Now, before you all jump in and tell me that my friend is dumb, that she’ll never be a programmer, or that you can’t idiot-proof a design, keep in mind the very point of this post.

Usability is hard because real users use our UIs and software in different and unexpected ways. Codecamedy did a very good job, but even they left plenty of room for improvement. As web developers it’s our duty to give usability and user experience a significant amount of attention. The UI is the software to the end user.
usability  design  userexperince  webdevelopment  webdesign 
january 2012 by jtyost2
javascript eval considered crazy -- wingolog
What can an engine do when it sees eval?

Not much. It can't even prove that it is actually eval unless eval is not bound lexically, there is no with, there is no intervening non-strict call to any identifier eval (regardless of whether it is eval or not), and the global object's eval property is bound to the blessed eval function, and is configured as DontDelete and ReadOnly (not the default in web browsers).

But the very fact that an engine sees a call to an identifier eval poisons optimization: because eval can introduce variables, the scope of free variables is no longer lexically apparent, in many cases.

I'll say it again: crazy!!!
eval  javascript  programming  webdevelopment  security 
january 2012 by jtyost2
steelThread/redmon - GitHub
A web interface for managing redis: cli, admin, and live monitoring
redis  ruby  programming  hardware  scalability  webdevelopment 
january 2012 by jtyost2
Fbootstrapp by Clemens Krack, based on Bootstrap, from Twitter
Fbootstrapp is a toolkit designed to kickstart development of facebook iframe apps in both relevant sizes. It includes base CSS and HTML for typography, forms, buttons, tables, grids, navigation, and more, styled in the typical facebook look and feel.
facebook  programming  webdesign  webdevelopment  css  framework 
january 2012 by jtyost2
adeel/veneer - GitHub
Modal dialogs in JavaScript. Depends on MooTools.
mootools  javascript  programming  webdevelopment  dialogs 
january 2012 by jtyost2
jKerny.js, jQuery plugin to make kerning easy
Powered by the power of Lettering.js and inspiration drawn on Kerningjs.com, jKerny gives you the ability to use brand new pseudo-selectors (well ok... they aren't W3C valid!)
jquery  plugin  webdesign  webdevelopment  programming  kerning  typography 
january 2012 by jtyost2
Making APIs is hard
So, no, I guess APIs and languages shouldn’t be as simple as possible just for the sake of it. They should represent the functionality they seek to disguise.
api  programming  software  webdesign  webdevelopment 
january 2012 by jtyost2
Read The Dinossaurs!
I never engineered a computer architecture or wrote an operating system. No software developed by my teams was ever considered “to be one of the most successful computers in history, influencing computer design for years to come” ; so when someone on his position writes something I am eager to read it; even if it is not directly applicable to my current situation.
ComputerScience  engineering  SoftwareEngineering  WebDevelopment  WebDesign 
december 2011 by jtyost2
૱ All characters — CopyPasteCharacter.com
A web and iPhone application for copying the ‘hidden’ characters that comes with the computer’s typefaces, to be pasted into emails, tweets, text documents, forums and whatever else you might need to spice up with an extra ♔, ฿ or, ❒.
design  icons  typography  webdesign  webdevelopment  programming 
december 2011 by jtyost2
mathiasbynens/jquery-placeholder - GitHub
A jQuery plugin which enables HTML5 placeholder behavior for browsers that aren’t trying hard enough yet
jquery  html  html5  placeholder  webdevelopment  webdesign  programming  form 
december 2011 by jtyost2
fent/randexp.js - GitHub
randexp will generate a random string that matches a given RegExp Javascript object.
regularexpressions  javascript  webdevelopment  programming 
december 2011 by jtyost2
The output element | HTML5 Doctor
Across the web, you’ll see a range of sites that feature calculators for working out things like loan repayments, mortgage rates, tax, insurance, and more. Until now, we’ve had no way of semantically marking up the result of those calculations. Enter: the <output> element! In this article, we’ll show you <output> and some related JavaScript tricks. Let’s get cracking.
html  html5  webdesign  webdevelopment  programming  javascript 
december 2011 by jtyost2
There is No Such Thing as Proprietary Client-side JavaScript - Girl Developer
This puts the development community in a unique position. Do we copy the established business community in the money grab? Do we want to line pockets while cranking out “It’s this for that’s” with every nerd for his/herself on the terms of “my code, my product, my creation?”

We’ve seen what that has done for the remnants of the industrial age, with huge corporations being the enemy of the individual. Where corporations battle each other in the media, and keep a tight grip on information, even if it means people losing lives. Where advancements are being retarded by a legal cat and mouse game, because the information companies hold dear could help all of us the world over if they would join forces.

What a beautiful place we are at where we can make a conscious decision not to follow in their footsteps. While the internet and it’s implications are still being formed every day. When we decide that the education and advancement of future developers, our children, and the history books are more important than lining our pockets (seriously, how expensive can comfy sweatshirts and Vibram Five Finger shoes be?)

Where would we be now if John Resig decided to keep his little library to himself? If DHH kept his framework proprietary? How much further could we be if more people shared the way they did?

I’m pledging to work for an open web and open code, a place where we can all share, learn, and invent together. I hope you will too.
programming  opensource  business  ethics  WebDevelopment 
december 2011 by jtyost2
Hyves Product Development: October 2011
HipHop is Facebook’s open source C compiler for PHP. HipHop (also known as HPHP) will compile your PHP code to highly optimized C code, which you can then compile (with g ) into a big binary that will run your web site (it includes a web server). If you want to know more about Hiphop and how it was created, you can check out the Facebook Engineering Blog article or the Github project .
After its introduction many bloggers have written background articles regarding Hiphop but few seem to have actually used it in a production environment. At Hyves , we use HipHop to run our web servers and our daemons, which are also written in in PHP. In this blog, I will detail some of our experiences and results.
HipHop  php  programming  WebDevelopment  C  HPHP 
december 2011 by jtyost2
html - How can I determine a web user's time zone? - Stack Overflow
Is there a standard way for a web server to determine what time zone offset a user is in?
From an HTTP header or part of the user-agent description, perhaps?
timezone  webdevelopment 
december 2011 by jtyost2
HTML5 Cross Browser Polyfills - GitHub
So here we're collecting all the shims, fallbacks, and polyfills in order to implant html5 functionality in browsers that don't natively support them.

The general idea is that: we, as developers, should be able to develop with the HTML5 apis, and scripts can create the methods and objects that should exist. Developing in this future-proof way means as users upgrade, your code doesn't have to change but users will move to the better, native experience cleanly.

Looking for a way to conditionally load these scripts client-side based on feature detects? See Modernizr. Looking for a guide to writing your own polyfills? See Writing Cross-Browser JavaScript Polyfills.
html5  css3  css  html  programming  polyfill  shim  javascript  webdevelopment 
december 2011 by jtyost2
Scripting News: Why apps are not the future
I'll keep playing here while the rest of you flirt with apps. I'll be here when you come back. I know it's going to happen. Here's why. 

Linking. 

Visualize each of the apps they want you to use on your iPad or iPhone as a silo. A tall vertical building. It might feel very large on the inside, but nothing goes in or out that isn't well-controlled by the people who created the app. That sucks!  

The great thing about the web is linking. I don't care how ugly it looks and how pretty your app is, if I can't link in and out of your world, it's not even close to a replacement for the web. It would be as silly as saying that you don't need oceans because you have a bathtub. How nice your bathtub is. Try building a continent around it if you want to get my point.
webdevelopment  programming  business 
december 2011 by jtyost2
inessential.com: Apps and web apps and the future
I think we’ll have both with us for a long time.

There’s one simple reason that should suffice: some developers love writing apps and some love writing web apps, and some love writing both.

This means that people will keep making both kinds of apps. One thing we’ve learned about developers is that economics matters, but love matters too, and many developers will make the kind of software they love to make.
iphone  ios  programming  webdevelopment 
december 2011 by jtyost2
shutterstock/rickshaw - GitHub
Rickshaw is a JavaScript toolkit for creating interactive real-time graphs.
javascript  graph  json  programming  webdevelopment 
december 2011 by jtyost2
Google Earth, other mobile apps leave door open for scripting attacks
At today's TakeDownCon security conference in Las Vegas, researcher Kyle Osborn will present some examples of cross-site scripting attacks that he and colleagues have discovered on mobile devices. "XSS is generally considered to be a browser attack," Osborn said in an interview with Ars Technica. But many applications, he said, such as those built with cross-platform mobile-development tools like PhoneGap, use HTML rendering to handle display of data. If applications aren't properly coded, it's possible for JavaScript or other web-based attacks to be injected into them through externally-provided data. "Often, there are times when you can just make a JavaScript request and pull files from the local filesystem," he said.

The most recent example Osborn found is a vulnerability in the Google Earth app that allows execution of arbitrary JavaScript code on the device by embedding script in location data. The vulnerability, demonstrated below, is present across all the platforms Osborn has tested. He says that the flaw has been reported to Google.
security  hacking  privacy  webdevelopment 
december 2011 by jtyost2
necolas/css3-social-signin-buttons - GitHub
CSS3 Social Sign-in Buttons with icons. Small and large sizes.
css  css3  webdesign  webdevelopment  buttons  programming  html 
november 2011 by jtyost2
Third Party JavaScript | Socialcast Engineering
I find it helpful to frame the Third Party JS model in terms of a diplomatic mission. As an invited guest in a foreign place, you should be both respectful and cautious of the new environment. As an emissary, you should be excited to augment the page with your own unique functionality. JavaScript gives you the opportunity to radically change an application for the better, but only when executed carefully (there is no “diplomatic immunity” for Third Party JavaScript). This article outlines some of the lessons learned from developing and supporting Reach’s JavaScript library with the Socialcast Engineering team.
javascript  programming  webdevelopment 
november 2011 by jtyost2
johnpolacek/ResponsiveThumbnailGallery - GitHub
jQuery Plugin for creating image galleries that scale to fit their container.
jquery  plugin  responsivedesign  webdesign  webdevelopment  images  ImageGallery 
november 2011 by jtyost2
Announcing jQuery Mobile 1.0 | jQuery Mobile
That’s right, version 1.0 is out! After more than a year of refinements, we now have a rock solid release.

When we first launched this site back in the summer of 2010, we had a few concept sketches and some very ambitions goals: to create an elegant HTML5-based user interface library for the jQuery community designed to work on all popular mobile platforms. We are built on the strengths of jQuery core and jQuery UI and strive to make mobile development efficient, accessible and maybe even a bit fun.

To reach the broadest possible audience,  we decided from the start to make the framework work on every popular mobile, tablet, e-reader and even desktop platforms by embracing HTML5 and responsive design techniques. A tall order, but we’re happy to announce that we’ve achieved this goal and now support all our target platforms as of 1.0. By using a progressive enhancement approach, even less capable devices can still access the content and functionality of a jQuery Mobile site. This broad compatibility gives you the ability to reach many billions of people.
jquery  jquerymobile  javascript  webdesign  webdevelopment  programming 
november 2011 by jtyost2
DataZombies/DBi - GitHub
DBi handles all the work of creating an iOS or Safari WebSQL database and manages local/session storages.

DBi creates, tables, indices, triggers & views and populates the tables all from a single JSON file that's outputted from DBi.
html5  localstorage  websql  html  javascript  programming  webdevelopment  webdesign 
november 2011 by jtyost2
Analyzing Network Characteristics Using JavaScript And The DOM, Part 1 - Smashing Coding
In this article, we’ll look at some methods of manipulating JavaScript to determine various network characteristics from within the browser — characteristics that were previously available only to applications that directly interface with the operating system. Much of this was discovered while building the Boomerang project to measure real user performance.
javascript  internet  programming  webdevelopment  tcp  http 
november 2011 by jtyost2
jClassy
A JavaScript library is proposed and implemented, providing a class-system core for building object-oriented JavaScript programs.
javascript  library  programming  webdevelopment 
november 2011 by jtyost2
recurly/recurly-js - GitHub
Full Reference: http://docs.recurly.com/recurlyjs/reference/

Recurly.js is an open-source Javascript library for creating great looking credit card forms to securely create subscriptions, one-time transactions, and update billing information using Recurly. The library is designed to create fully customizable order forms while minimizing your PCI compliance scope.

This library depends on jQuery 1.5.2+. A future version may be framework agnostic.
javascript  pci  ecommerce  webdesign  webdevelopment  programming 
november 2011 by jtyost2
Native JavaScript H.264 decoder offers compelling demo of JS performance
Mozilla developer Michael Bebenita has released a JavaScript-based H.264 decoder that is intended to run natively in Web browsers. The decoder, which can display video at 30 frames per second on conventional hardware, is yet another compelling demonstration of JavaScript’s performance potential.

JavaScript creator Brendan Eich included a demonstration of the H.264 decoder—codenamed Broadway—during a presentation at the ACM’s annual OOPSLA conference. The demonstration attracted some attention, prompting the developers to publish the source code.

Broadway is based on the open source H.264 decoder that Google uses in Android. The Mozilla developers simplified the Android H.264 decoder—which is written in the C programming language—and converted it to JavaScript. They used Emscripten, a compiler that translates LLVM bitcode into JavaScript. In addition to the Emscripten-generated H.264 decoder, the Broadway developers are also working on a separate implementation that is coded by hand.

According to the Emscripten documentation, code generated by the compiler typically runs about 10 times slower than the equivalent binary that you would get by compiling the same C code with the -O3 flag in GCC. But some recent JavaScript performance optimizations in Firefox improve performance.

The Broadway developers caution that the H.264 decoder will only perform as expected in recent Firefox nightly builds, which incorporate the latest JavaScript performance improvements—particularly a new type inference mechanism that gives JavaScript execution speed a considerable boost.

The Broadway project offers useful insight into JavaScript performance characteristics, but its not really intended for real-world usage. Mozilla’s objections to H.264 on the basis of patent encumbrances still stand and make it unlikely that users will see the video codec supported out of the box in Firefox.

Broadway is also highly CPU-intensive, which makes it impractical to use. That could change in the future, however. Hardware acceleration could be achieved via WebGL, reducing the decoder’s load on the CPU. The initial Broadway implementation didn’t include any special optimizations, aside from the ones applied by Emscripten. The developers were able to crank its performance up by 40 percent this week with some tweaking. Bebenita says that there is still plenty of room for further speedups.
Mozilla  JavaScript  H.264  firefox  webdevelopment  browser  from instapaper
november 2011 by jtyost2
BBC News - EU bans pre-ticked website boxes to aid consumers
"Pre-ticked" boxes on shopping websites will be banned in European Union states under newly approved legislation.

EU ministers meeting in Luxembourg have passed a set of rules aimed at strengthening consumer rights, which the EU parliament backed in June.

They mean online traders will have to disclose the total cost of a product - including fees - and customers will have to actively opt-in to extras.

Member countries will have two years to implement the rules nationally.
legal  webdesign  webdevelopment  programming  EuropeanUnion  privacy 
october 2011 by jtyost2
PHP needs to die. What will replace it? | Seldo.Com Blog
Ten years later, I can feel the tide turning again. Developers' expectations of languages have moved on. If the critical thing Perl was lacking was PHP's wonderfully flexible "associative arrays" (aka smart hashes), then what PHP is lacking is lambdas and method chaining. While PHP used to be the language where you could write a web page in twenty lines of code, nowadays it doesn't feel like you're doing it properly unless you've laid down at least a basic MVC framework of some kind. That boilerplate code is the tell: the language now requires modification by a framework to do what you need.

Back then, I felt the die-hards clinging to Perl for web development were silly. Now, with ten years of PHP experience under my belt, I'm in the same position. I can knock out a good website in an hour in PHP, and an excellent one in a day or two. Its performance characteristics are well-known and understood, so I can make it scale pretty much indefinitely. Every developer we'd want to hire knows it, and every system we'd integrate with has a wrapper library written in it. I am trapped by the convenience of PHP in a language that is losing its suitability for the task.
php  perl  language  ruby  RubyOnRails  webdevelopment  programming 
october 2011 by jtyost2
Email, phone home: Initiating voice calls from HTML email newsletters - Blog - Campaign Monitor
Once upon a time, mobile devices were primarily used for calling other people. That was long ago and since then, we've graduated to using our iPhones and Androids primarily to play Angry Birds. Nonetheless, voice calling still has its place in the world.

There are loads of businesses that rely on phone calls to make their bread-and-butter - from Thai take-out joints, to your local salon. Perhaps even you and your clients fit into this category, too!

In this post, we're going to look at how you can get your subscribers to place calls from an HTML email newsletter received in their desktop, web or mobile email client. You heard it - we're not talking about maximizing click-throughs, but call-throughs. Featured is an example HTML email newsletter (pictured) which you can download, adapt and use to learn more about this technique.
webdesign  webdevelopment  programming  css  email 
october 2011 by jtyost2
When "clever" goes wrong: how Etsy overcame poor architectural choices
Things began to change as the engineering culture shifted, Snyder said. "We went from lockdown to DevOps," he explained, and the boundaries between teams were largely removed. With Dickerson's arrival, Etsy's team started to take on a significant amount of "Flickr's DNA", he said, and shifted toward a more agile, DevOps approach to development.

That culture includes frequent, small software releases, and giving developers access to operations' monitoring tools to watch performance and access to systems to help tweak them. "Not every developer has root on every box," Snyder said, "but by and large you can get everywhere and look at things. The core platform team needs a certain level of access. I think we err on the side of too much access instead of too little."

The first step down that path to escaping from the architectural hole Etsy had put itself in was stabilizing Sprouter and the rest of the infrastructure. That included improving metrics and monitoring of performance—which, Snyder joked, could be improved by “having any metrics and monitoring.” The engineering team also upgraded Etsy's database hardware as much as practically possible. “We upgraded the master database to the limits of what was possible,” Snyder said. “It still wasn't enough, but it bought us breathing room.”

With that little bit of breathing room (and the accompanying downtime for the upgrade), Etsy began to shift to a new architecture—still based on PHP on the front end, but now running on Apache web servers with connections to databases directly through object-relational mapping.

And the team started to shift feature by feature away from a semi-monolithic Postgres back-end to sharded MySQL databases. “It's a battle-tested approach,” Snyder said. “Flickr is using it on an enormous scale. It scales horizontally, basically, to near infinity, and there's no single point of failure—it's all master to master replication.”

With frequent small releases, and incremental migration of features away from Sprouter, it took until spring of this year for Etsy to completely move off the middleware and turn it off for good. “I got to be the one to remove it from source control,” Snyder said. The Postgres database, however, still remains—and likely will for some time.

One of the lessons learned from Sprouter, Snyder said, was that “if you're doing something 'clever," you're probably doing it wrong.” At the same time, he admits, he and the others at Etsy today are probably making architectural decisions that others will look back with hindsight at and find fault with.
technology  programming  scalability  webdevelopment  etsy 
october 2011 by jtyost2
PhoneGap to become an Apache project as Adobe acquires Nitobi
Adobe has entered an agreement to acquire Nitobi, the startup behind PhoneGap. Alongside news of the acquisition, Adobe and Nitobi have jointly announced plans to donate the PhoneGap project to the Apache Software Foundation.

PhoneGap is an open source mobile development framework for building applications with standards-based Web technologies. The project provides a cross-platform Web runtime that allows application developers to reach multiple mobile operating systems with a single code base. It includes a custom API stack that enables platform integration and exposes device capabilities.

The PhoneGap APIs are generalized so that the same code can be used across multiple operating systems for tasks like accessing the camera or addressbook. The goal of PhoneGap is to make it possible for local Web applications to have the same functionality as native software. The framework currently supports iOS, Android, the Blackberry OS, webOS, Symbian, and Bada—though not all of the features are supported on every platform.

PhoneGap applications can be distributed through the conventional application stores of the various mobile software platforms—it fully conforms with the rules and policies set by the platform vendors. In addition to developing PhoneGap, Nitobi has also created a hosted build service that can automatically generate packages for the various platforms.

Adobe's AIR software was originally conceived as a cross-platform Web runtime in much the same vein as PhoneGap, but the focus of the product has narrowed considerably in recent years. The mobile versions of AIR, for example, only supports Flash. Adobe intends to embrace PhoneGap for building applications with Web technologies while continuing to develop AIR as a solution for deploying Flash content—the two runtimes can complement each other instead of competing.

Adobe's historically solipsistic view of the Web and the vitriol that certain employees of the company have directed towards advancements in Web standards raise some questions about how the company will proceed with PhoneGap. Fortunately, it looks like Adobe has good plans for the open source project.
phonegap  adobe  mobile  apache  ApacheSoftwareFoundation  webdesign  webdevelopment  programming  html5  flash 
october 2011 by jtyost2
Google Analytics Blog: What’s happening on your site right now?
The web is getting faster, and not just the speed of the pages, but also the speed of change. Before, it was fine to build a website and modify it only when new products were launched. All of us avid Analytics users know that’s just not good enough. We need to be constantly on the lookout for problems and opportunities.

Currently, Google Analytics does a great job analyzing past performance. Today we’re very excited to bring real time data to Google Analytics with the launch of Google Analytics Real-Time: a set of new reports that show what’s happening on your site as it happens.
googleanalytics  google  business  statistics  webdevelopment  programming 
september 2011 by jtyost2
Google Analytics Blog: Introducing Google Analytics Premium
We built Google Analytics on the principle of democratizing data-- giving all website owners, big and small, the ability to learn from their visitors. Many websites use Google Analytics, ranging from personal blogs to large enterprises whose products and services we use daily.

We learned from some of our largest customers that they have some specific needs that the current version of Google Analytics can't meet in their entirety. Today we're addressing these needs by announcing a new option built for our largest customers: Google Analytics Premium.

We developed Google Analytics Premium around these pillars: more data, advanced tools, dedicated support and guarantees.
googleanalytics  statistics  webdevelopment  programming  google  business 
september 2011 by jtyost2
BluCSS
BluCSS is a CSS framework designed with ease of use and simplicity in mind. It is specifically made so that when you're working on your next project, you don't have to worry about the essentials. With BluCSS, you can be up and running in less than a minute.
design  framework  css  css3  responsivedesign  webdesign  webdevelopment 
september 2011 by jtyost2
Will Developers Adopt Adobe Flash 11? - NYTimes.com
Adobe, the software company, introduced on Wednesday the latest version of the Adobe Flash Player, which it hopes will broaden the appeal of the software to televisions and 3-D gaming. But the company will have to persuade developers to adopt the software for interactivity on the Web and online video as many opt for HTML5 instead.

Until now, Adobe Flash has been primarily used on the Web and on Flash-supported mobile devices. The latest Adobe update shows an emphasis by the company to support 3-D gaming and new features that will enable developers to create high-resolution Flash content for televisions.

In a blog post on Adobe’s Web site, Tom Nguyen, Adobe’s product manager for the Flash player, said Adobe had added a feature to its software called Stage 3D, which enabled rendering performance 1,000 times faster than Flash Player 10. You can see an example of a game using the latest 3-D features above.
adobe  flash  html5  webdevelopment  programming 
september 2011 by jtyost2
The Great Lie - Lorem Ipsum | ignoredByDinosaurs
If you do the design first and the copy last, you lose. If you do the copy first and the design second, you stand a much better chance at succeeding with both.
webdesign  webdevelopment  programming  design  copywriting 
september 2011 by jtyost2
idealforms - Ideal Forms is a small framework to build powerful and beautiful forms for the web. - Google Project Hosting
Ideal Forms is a small framework to build powerful and beautiful forms for the web.
It's very easy to use and requires minimal html syntax.
Absolutely everything is stylable with css, no images needed.
Support for IE7+, Firefox 3.5+, Chrome 4+, Safari 3.1+ and Opera 11+.
Degrades gracefully with javascript disabled.

Visit http://www.jqidealforms.com for more info.
jquery  javascript  programming  webdesign  webdevelopment 
september 2011 by jtyost2
google-api-php-client - Google APIs Client Library for PHP - Google Project Hosting
The Google API Client Library enables you to work with Google APIs such as Buzz, Moderator, Tasks, or Latitude on your server, in the language of your choice ( as long as it's PHP :P )
php  google  api  programming  webdevelopment 
september 2011 by jtyost2
Google Swiffy
Swiffy converts Flash SWF files to HTML5, allowing you to reuse Flash content on devices without a Flash player (such as iPhones and iPads).
Swiffy currently supports a subset of SWF 8 and ActionScript 2.0, and the output works in all Webkit browsers such as Chrome and Mobile Safari. If possible, exporting your Flash animation as a SWF 5 file might give better results.
swiffy  html5  flash  google  webdesign  webdevelopment  programming 
september 2011 by jtyost2
« earlier      

related tags

#failwhale  abtesting  accessibility  adobe  advertising  ajax  ala  amazon.com  AmazonElastiCache  AmazonSES  AmazonWebServices  antialiasing  apache  ApacheSoftwareFoundation  api  appcache  apple  audio  audo  backup  banner  benchmark  bestpractices  blogazine  blogging  boilerplate  breadcrumbs  browser  browsers  business  button  buttons  C  cache  CakePHP  canvas  captcha  career  china  clearfix  clickevent  clients  cloud-computing  cloudcomputing  cms  codehiglight  CodeIgniter  coffeescript  communication  compression  computer  ComputerScience  content  copyright  copywriting  couchdb  creditcard  cryptography  css  css3  CSSAnimation  cssanimations  cssframework  csslint  csstabs  culture  curl  database  datauri  decoder  design  development  dialogs  digg  dojo  domain  draganddrop  dropdown  ecommerce  education  email  encryption  engineering  environment  ethics  etsy  EuropeanUnion  eval  extensions  facebook  FacebookOpenGraph  failwhale  favicon  feedburner  firefox  flash  flickr  float  font  fontsize  form  forums  framework  games  geek  geolocation  git  github  gmail  google  googleanalytics  googleandroid  GoogleCalendar  googlecdn  googlechrome  googlechromeframe  googledocs  googlegears  GooglePageSpeed  GooglePlus  GoogleSites  GoogleTalk  graph  graphics  gzip  H.264  hacking  hardware  health  heatmap  highcharts  HipHop  hover  HPHP  html  html5  html5audio  html5form  html5video  http  HTTPArchive  httpheaders  HumanComputerInteraction  humor  icons  ide  ie  ie6  ie7  ie8  ie9  iframe  illustration  ImageGallery  images  information  instapaper  internet  internetexplorer  ios  ios5  ipad  iphone  java  javascript  jformer  journalism  jpeg  jquery  jquery1.6  jquery1.6.2  jquerymobile  jqueryui  json  kerning  keyboard  language  layout  legal  less  library  lifestream  lint  localstorage  login  macosx  magazine  markdown  marketing  media  medicine  Memcache  menu  metadata  microsoft  microsoftoffice  mobile  mobilesafari  mockingbird  mockup  modal  model  mootools  Mozilla  MozillaFirefox  mp3  multiselect  mysql  navigation  node.js  nodejs  notification  opensource  opera  optimization  pagination  password  PaymentProcessor  pci  pdf  performance  perl  phonegap  photography  php  php5  php5.4  phpfog  placeholder  placeholderimages  plugin  polyfill  popup  printdesign  privacy  programming  progressbars  projectmanagement  publishing  QapTcha  qrcode  quotes  redis  regex  regularexpressions  research  responsivedesign  responsivewebdesign  rest  rotator  ruby  rubyonrails  safari  scalability  search  searchengine  searchengines  security  seo  server  shim  sitemap  slider  soap  socialmedia  socialnetworking  software  SoftwareEngineering  sorting  sprite  sprites  standards  statistics  swiffy  sysadmin  tables  tabs  tcp  technology  template  testing  time  timestamp  timezone  tooltip  twitter  TwitterBootstrap  typography  ui  url  usabality  usability  userexperience  userexperince  userinterface  validation  vectormap  venndiagram  VerticalCenter  video  w3c  webdesign  webdevelopment  webgl  webkit  webos  webputty  websql  webstandards  WHATWG  windows  wordpres2.9  wordpress  wordpress-themes  wordpress3.0  wordpressplugin  writing  xhtml  xml  xmlhttprequest 

Copy this bookmark:



description:


tags: