gordonbrander + pattern   76

Stack Overflow: Reactive Programming for GUIs
Nice insights here. Reactors both subscribe to the event and return a handler.
functional  development  pattern  web  JavaScript  from iphone
19 days ago by gordonbrander
A New Front-End Methodology: BEM | Smashing Coding
BEN has been something of a muse for @necolas lately. Good ideas here.
CSS  web  development  design  HTML  pattern  from iphone
5 weeks ago by gordonbrander
Smalltalk - Wikipedia, the free encyclopedia
A Smalltalk object can do exactly three things:
Hold state (references to other objects).
Receive a message from itself or another object.
In the course of processing a message, send messages to itself or another object.

This smells like JavaScript evented models. Reinventing Smalltalk?
oop  development  pattern  mvc  from iphone
6 weeks ago by gordonbrander
Scripting: Higher Level Programming for the 21st Century
Implementation inheritance... is a bad idea that makes software harder to manage and reuse. It binds the implementations of classes together so that neither class can be understood without the other: a subclass cannot be understood without knowing how the inherited methods are implemented in its superclass, and a superclass cannot be understood without knowing how its methods are inherited in subclasses. In a complex class hierarchy, no individual class can be understood without understanding all the other classes in the hierarchy.

Nonetheless, object oriented programming does provide at least two useful features. The first is encapsulation: objects combine together data and code in a way that hides implementation details. The second useful feature is interface inheritance, which refers to classes that provide the same methods and APIs even though they have different implementations. This makes the classes interchangeable, which encourages reuse.

JavaScript's prototypal inheritance side-steps the implementation inheritance issue by making everything implemented by the class observable on a prototype object.
development  javascript  compsci  web  pattern 
6 weeks ago by gordonbrander
About HTML semantics and front-end architecture – Nicolas Gallagher
Great ideas about class naming patterns. Also a great conversation starter re: modular front-end development.
css  architecture  development  web  pattern  html 
8 weeks ago by gordonbrander
Expression problem - Wikipedia, the free encyclopedia
As quoted by Brendan Eich:
Denial that the expression problem exists is a common symptom of overzealous functional or object-oriented dogmatism.

http://twitter.com/pcwalton/status/176741289700769792
compsci  development  pattern  functional  oop  learn 
12 weeks ago by gordonbrander
Of Spreads and Slices | vvvv
The visual prototyping language VVVV abstracts away the notion of arrays -- it's all just sets (or "spreads"), and sometimes a set may be composed of one. jQuery also suggests this is a developer-friendly approach.
development  design  pattern  learn  animation 
february 2012 by gordonbrander
Patterns For Large-Scale JavaScript Application Architecture
Addy Osmani puts together a mammoth article on large-scale JS architecture.
mvc  javascript  architecture  pattern 
february 2012 by gordonbrander
E.W. Dijkstra Archive: The Three Golden Rules for Successful Scientific Research (EWD 637)
"Raise your quality standards as high as you can live with, avoid wasting your time on routine problems, and always try to work as closely as possible at the boundary of your abilities. Do this, because it is the only way of discovering how that boundary should be moved forward."
Brilliant.
science  philosophy  development  design  pattern 
february 2012 by gordonbrander
GUI Architectures
A massive list of software architecture patterns, with detailed descriptions and diagrams.
architecture  oop  pattern  mvc  mvp  learn  development 
february 2012 by gordonbrander
Passive View
Unlike most MVC-style configurations, Passive View results in no dependencies between view and model.
mvp  oop  pattern  development  web  architecture 
february 2012 by gordonbrander
Retirement note for Model View Presenter Pattern
An archive of MVP discussion links:
Upon further study and reflection, I decided that pattern that was here under the name "Model View Presenter" needed to be split, so I have separated it into Supervising Controller and Passive View.
architecture  pattern  development  web  mvp 
february 2012 by gordonbrander
Presenter First - Wikipedia, the free encyclopedia
Presenter First is a software development approach that combines the ideas of the model–view–presenter (MVP) design pattern, test-driven development, and Feature-driven development.

Presenter First concentrates on transforming each of a customer's requirements into a well tested, working feature as quickly and with as much correlation to the customer's story language (requirement) as possible. The language of the story or requirement is used to directly guide development of the feature – even naming the modules and function calls. As a consequence, the feature implementation tends to closely represent the customer's desire with little extraneous or unneeded functionality. The language of the source code also corresponds closely to the customer's stories.
design  architecture  web  development  business  pattern  agile  tdd  test 
january 2012 by gordonbrander
Reusable Abstractions: data as functions in JavaScript
Tweeted by Brendan Eich. The idea: what if arrays and hashes were functions? This way you have one reference style everywhere, leading to more flexible programming. Easy to emulate in JS by wrapping arrays and hashes in a function. Useful for my Model research.
JavaScript  development  web  pattern  from iphone
january 2012 by gordonbrander
Remote collaborative sketching, brainstorming and design studio techniques | Perception Is The Experience
Great idea: use a spreadsheet to approximate a collaborative sketching session (in which you typically use stickies).
business  design  pattern  agile 
january 2012 by gordonbrander
The If Works - The cost of privacy
The problem with assigning new methods to the object in the constructor.
javascript  development  pattern 
january 2012 by gordonbrander
The Rise of ``Worse is Better''
[The MIT/Stanford style of design] can be captured by the phrase ``the right thing.'' To such a designer it is important to get all of the following characteristics right:

Simplicity-the design must be simple, both in implementation and interface. It is more important for the interface to be simple than the implementation.

Correctness-the design must be correct in all observable aspects. Incorrectness is simply not allowed.

Consistency-the design must not be inconsistent. A design is allowed to be slightly less simple and less complete to avoid inconsistency. Consistency is as important as correctness.

Completeness-the design must cover as many important situations as is practical. All reasonably expected cases must be covered. Simplicity is not allowed to overly reduce completeness.

...I will call the use of this philosophy of design the "MIT approach."... However, I believe that worse-is-better, even in its strawman form, has better survival characteristics than the-right-thing...

...The lesson to be learned from this is that it is often undesirable to go for the right thing first. It is better to get half of the right thing available so that it spreads like a virus. Once people are hooked on it, take the time to improve it to 90% of the right thing.
design  philosophy  pattern  development 
january 2012 by gordonbrander
Knockout : Observables
Interesting: Knockout has models that are simple object-literals, with properties that are evented.
pattern  web  development  javascript  architecture  mvc  opensource 
january 2012 by gordonbrander
Model–view–presenter - Wikipedia, the free encyclopedia
This sounds like the right pattern for front-end architecture -- a kind of streamlined MVVM.
mvc  development  web  architecture  pattern 
january 2012 by gordonbrander
JavaScript pattern and antipattern collection
A JavaScript pattern and antipattern code collection that covers function patterns, jQuery patterns, design patterns, general patterns, literals and constructor patterns (upcoming), object creation patterns (upcoming), code reuse patterns (upcoming), DOM and browser patterns (upcoming).
opensource  javascript  development  web  pattern  book 
january 2012 by gordonbrander
Prototypal Inheritance - How To Node - NodeJS
A better explanation of prototypal inheritance than most.
javascript  oop  pattern 
december 2011 by gordonbrander
Asynchronous Programming in JavaScript with “Promises” - IEBlog - Site Home - MSDN Blogs
Tired of nested callbacks? A better alternative to managing multiple async processes.
javascript  pattern  ajax 
december 2011 by gordonbrander
DailyJS: Production Teardown: Flickr's Asynchronous Script Loading
How to handle the "flash of unscripted behavior" when JS is loaded via
asynchronous loaders.
javascript  web  development  pattern  from iphone
december 2011 by gordonbrander
Scalable JavaScript Application Architecture
Nicolas C. Zakas on building modular UI JavaScript architectures that work. This thinking went into Yahoo's Cocktails framework.
architecture  javascript  development  presentation  web  pattern 
december 2011 by gordonbrander
Sandboxing JavaScript
Using the with statement to sandbox modules. This kind of makes my skin crawl, but I have to chew on it.
javascript  pattern  module  development  web 
december 2011 by gordonbrander
Malte Ubl - Google+ - Implemented prototype AMD to CommonJS module transformation…
Cramforce implemented AMD to self-executing function module compilation in Closure Compiler.
javascript  development  pattern 
november 2011 by gordonbrander
AMD versus CJS. What’s the best format? | Unscriptable.com
A good overview of Async Module Definition (AMD) vs CommonJS (CJS) loading. The short answer: AMD for browser, CJS for Node. A good reference if I get questions on this.
javascript  development  pattern  web  nodejs 
november 2011 by gordonbrander
Ben Alman » Immediately-Invoked Function Expression (IIFE)
A nice intro to immediately invoked (self-executing) functions in JS. Might be a good reference for students.
bdw2011  javascript  development  pattern 
november 2011 by gordonbrander
Felix's Node.js Style Guide
Good tips. This looks to be the PEP8 of Node.
javascript  nodejs  web  development  pattern 
november 2011 by gordonbrander
Using Inheritance Patterns to Organize Large jQuery Applications « AlexSexton.com
Some nice thoughts. I currently favor using standard JavaScript constructor functions, exposing them using the jQuery method as a factory.
javascript  jquery  pattern  development  web 
november 2011 by gordonbrander
Custom types (classes) using object literals in JavaScript | NCZOnline
Discussion of Jeremy Ashenkas' proposed object-literal class definition syntax. Also a small snippet for creating something like this in JS.
javascript  oop  pattern 
november 2011 by gordonbrander
Screenr - tjholowaychuk: Express - Route Specific Middleware
Very cool: ExpressJS allows you to pass multiple controllers/handlers to a given URL match. Where this gets interesting is as a way to hook in Middleware. You can do abstract common tasks as functions (loadUser, loadEmails, etc), assign their results to the request, and delegate to the next controller with next();
expressjs  nodejs  development  pattern  film 
november 2011 by gordonbrander
CoffeeScript #classes
CoffeeScript's desugared JavaScript class implementation is very straightforward and uses prototype chaining properly.
javascript  coffeescript  pattern  development  web 
november 2011 by gordonbrander
UI Pattern Library - By Aarron Walter of Mailchimp | Flickr - Photo Sharing!
A styleguide for Mailchimp's large and well-organized modular front-end architecture.
html  development  css  pattern  web 
november 2011 by gordonbrander
Scaling Isomorphic Javascript Code
An analysis of organization flows derived from MVC, but tweaked to
work well in front-end, back-end or both.
mvc  pattern  development  web  javascript  nodejs  from iphone
october 2011 by gordonbrander
Dan Piponi - Google+ - Yet again, in all the discussion about Dart I see the oft…
Good reasoning from the "types are good" camp. I really like the Dart approach of contractual, optional typing. There when you need it, not when you don't, and allows you to resolve some of the performance stuff we're running into with JS arrays not being typed.
javascript  development  philosophy  pattern 
october 2011 by gordonbrander
2 is a smell : Pure Danger Tech
An interesting idea from the functional programming world. Good functions should either take 1 parameter, or n parameters; never just 2. The idea being that whatever you can do with 2, you can do with (n > 2), and by destructuring your function's parameters, you're making your program more flexible and intuitive.
development  philosophy  pattern 
october 2011 by gordonbrander
Dean Edwards: Callbacks vs Events
An interesting approach to building an event system that allows errors in bound functions to throw without breaking the callback chain.
javascript  development  pattern 
september 2011 by gordonbrander
BEM
A component-based CSS framework (front-end legos). This one is more of a library.
css  framework  pattern  development  web 
september 2011 by gordonbrander
Scalable and Modular Architecture for CSS
A short web book by Jonathan Snook (@snookca) exploring how to create re-usable CSS (it's the approach we employ here that we dub "front-end legos").
architecture  design  development  css  web  pattern 
september 2011 by gordonbrander
iOS Boilerplate - A base template for iOS apps
Inspired by HTML5 Boilerplate, a best-practices starter template for iOS apps.
ios  development  pattern  opensource 
september 2011 by gordonbrander
Yiibu - Lovingly crafted mobile experiences
This looks like a promising exploration of building true all-device websites. Investigate.
blog  mobile  web  design  development  pattern  learn 
september 2011 by gordonbrander
The Pocoo Style Guide — Pocoo
More great coding standards - Python-specific, but generally useful.
python  pattern  development 
september 2011 by gordonbrander
Essential JavaScript Design Patterns For Beginners
Hey! A free online book, re: Javascript design patterns. This might come in handy for classes at some point.
javascript  pattern  development  web  teaching  learn 
july 2011 by gordonbrander
Normalize CSS : necolas/normalize.css @ GitHub
@necolas puts together a light alternative to CSS resets. He researched the actual differences between the way browsers render and put together a reset that only targets things that need normalization. Cool!
css  pattern  development  web 
may 2011 by gordonbrander
WordPress Theme Unit Test « WordPress Codex
A handy WXR full of dummy content for WordPress theming.
test  wordpress  theme  development  pattern 
august 2010 by gordonbrander
Tileables - Never Ending Patterns
Free web-ready patterns of hard-to-tile textures like paper (wrinkled!), wool, leather, rust, etc. Comes with images and Photoshop .PAT files.
design  web  pattern 
july 2010 by gordonbrander
cssdoc
CSS-specific documentation system (like Docblock)
css  documentation  code  pattern 
january 2010 by gordonbrander
Dartmouth: Pattern
Class syllabus on pattern in math and art
design  pattern  culture  school  learn 
november 2009 by gordonbrander
tantek / OpenScience
Tantek's best practices for Open Science (ala open source)
opensource  creativecommons  publishing  publicdomain  research  science  web  pattern 
july 2009 by gordonbrander
Google Speed Docs: Let's make the web faster
Google gives low-level best practices and high-level concepts on how to create a fast web app.
web  development  javascript  php  code  html  css  learn  performance  pattern 
june 2009 by gordonbrander
Reset CSS
Eric Meyer's well thought-out reset styles.
css  reset  web  development  design  snippet  framework  resource  learn  pattern 
december 2008 by gordonbrander
The Highly Extensible CSS Interface
Cameron Moll builds bulletproof. He shows you how, too.
css  html  web  standard  design  javascript  learn  pattern 
april 2008 by gordonbrander

Copy this bookmark:



description:


tags: