Tag Archives: developers

why I choose the mit license

14 Jan

I’ve been slowly working on moving all of my projects and tutorials to one site. Mainly because there treated like blog posts instead of projects. This of course lead me to start looking at which license to start looking at which license to release everything as.

After a few days pouring over everything on the web I decided to choose the mit license. Why? The mit license fits how I want to release my code. It releases my code openly to anyone, only asking that the copyright in my code remain.

This will probably lead to you ask why not gpl, apache, or bsd?

why I didn’t choose gpl

the gpl license [http://en.wikipedia.org/wiki/GNU_General_Public_License] is restrictive IMO, due to the fact that it forces a user to release anyone that uses what i create under gpl as well. This is not to say that the gpl is wrong, just that its restrictive to end users / developers in a way I choose not to me. If someone takes code that I am openly releasing, I don’t want to limit them in anyway other than to leave a portion giving me credit for my portion of code, that’s it.

If i was working on some huge next best thing (think wordpress) and planned to release it, then I would use a gpl license. why? something like wordpress could easily be exploited commercially. If I take the time to build something like that I would want anyone who decides to change it or build off of it to release it themselves, to also make sure it’s free under the same license. The biggest difference here is intent. If you were to create the next swfobject.js (which uses an mit license), why restrict your users? But if your creating the next wordpress you don’t want to restrict users, just ensure that your work continues to be free.

why i didn’t choose bsd

the bsd license is similar to the mit license, but with an advertising clause. So to prevent anyone from any legal issues (who knows what counts as advertising in the future), why restrict end users?

why I didn’t choose apache

the apache license is the default license for projects at google code (you can select others), so it’s gotta be good. But it feel slightly more restrictive. That said: I’m releasing anything that uses patents. If you are then an apache license might be for you if you’d like to not restrict users.

in a nutshell

I think the best quote I came across was from eagain.wordpress.com:

if you want software to be free GPL is better than BSD. If you want use of software to be free BSD is better.

I think mit/bsd licenses are better for developers when your creating random things that might help someone (think swfobject). gpl is better if your developing an application to help everyone (think wordpress).

sid

*update* – found another good article:

http://fosswire.com/2007/04/06/the-differences-between-the-gpl-lgpl-and-the-bsd/

Google introduces Native client: It might be like java, it might be like activex, jury is still out

9 Dec

Ok I’m kinda confused are they trying to replace java, or activex, both…?

From: http://google-code-updates.blogspot.com/2008/12/native-client-technology-for-running.html

Modern PCs can execute billions of instructions per second, but today’s web applications can access only a small fraction of this computational power. If web developers could use all of this power, just imagine the rich, dynamic experiences they could create. At Google we’re always trying to make the web a better platform. That’s why we’re working on Native Client, a technology that aims to give web developers access to the full power of the client’s CPU while maintaining the browser neutrality, OS portability and safety that people expect from web applications. Today, we’re sharing our technology with the research and security communities in the hopes that they will help us make this technology more useful and more secure.

Check It Out:
Google Code Blog: Native Client: A Technology for Running Native Code on the Web

quick start: web project management

13 Nov

So I’m trying to give a friend a few of the basics they’d need to know for managing a web project. Not a bible, just a quick read to hit the ground running. Here is what I came up with.

Your team:

designers – creative artistically, creates look and feel, communicate, produces things you can see
developers – creative technically, creates applications foundation, communicate, leave alone for extended periods, produces things that are used, but not always seen.
cto – head geek, usually smarter than you.
ceo – head head, smile and nod – might be cool
cfo – head money – nuff said
creative director – awesomely artistic, likes coffee
techincal director – almost head geek
vp anything – has friends, probably knows what their doing
assitant – love them, bring them coffee, and be really really nice to them
project manager – you, makes sure designers / developers are making progress, middle man between client, developers / designers, and everyone else (maybe)

Basecamp:

where you document everything. Covers your ass. Anything changes, legals, documents, or client communication happens here.

Cover your ass use BC

Deadline:

in house milestone / deadline=client review milestone / deadline- (1 – 2 weeks)
client milestone / deadline = milestone / deadline + (1 – 2 weeks)
client review milestone / deadline = milestone / deadline – (2-3 weeks)

Terms to know:

fubar – we’re fucked
need more time – your fucked
great – needs review
fun – expect delays
breach of contract – see fubar * 2
contract – covers your ass
invoice – pays your ass
server – where everything runs
ui / client side – where everything is seen
php, ruby, python – what developer use to make things run
css / stylesheet – what designers / developers use to layout what you see
ajax – those cool effects
flash – more cool effects
flv – youtube video
harvest – where everyone tracks time
bc – where you track clients / team
skype – online meeting
delay – no sleep
billable hours – what you can get paid for
over hours – what you might get paid for
favor – 5/1 to get your account established
hail mary -  a favor that empties your favor account
wireframe – lines that show how something will look
mock up – test design
voip – the phone
im / aim – chat
ping – contact

And there you have it, my quick read, more web filler.

sid

Hosting: where to go, where to go

18 Aug

So after about 2 months on slicehost, I have yet to finish setting up my server. It seems to be the busy season and I’ve only been able to finish my local servers.

So to recap I know have a media temple box and a slicehost box. Now to further complicate the situation after much debate / research I’m looking at linode: http://www.linode.com.

Why linode?

  1. They use Intel processors
  2. More ram, space, bandwidth
  3. better control panel
  4. better vps management

That said slicehost has been great for information. I’m not a fan of their forums but they do have great tutorials.

Why slicehost?

  1. They seem slightly more stable
  2. Made by developers for developers
  3. First impressions

…. so that said, sorry for the lack of new tutorials, code, broken templates, etc

And now to see about canceling one of these damn server

php tip: securing .inc include files

17 Aug

just a quick tip for anyone using .inc files via apache.

add the following to your apache configuration to prevent viewing of .inc files via the web. This will not prevent php from including the files locally

<FilesMatch "\.inc$">
Deny From All
</FilesMatch>

There ya go, now feel free to use .inc files as much as you’d like. Also an fyi – I recommend using .php instead of .inc, security wise a few configuration changes will make both extensions about the same. Mainly it’s for developers. Some developer tools treat .inc differently than .php. So to keep it easier for the developer .php is recommended, but not required.

elsid out

all about the wordpress 2.5 caching system

23 Apr

theres a post on neosmart that answers alot of questions about the new caching system in wordpress

Ever since the creation of interpreted languages and the birth of dynamic web content, developers have been on the lookout for tools, workarounds, and extensions in search of a solution for a solution to bring maximum performance to the world of dynamically-generated web pages.

Perhaps the simplest, most straight-forward, and most effective of these solutions is the caching technique. In most caching implementations, the dynamic content generated by user requests to a particular URI on a server trigger the caching mechanism which then stores the generated content in a “storage facility” somewhere. Future requests to the same URI retrieve the stored content rather than spend time and effort re-creating the response.

The most-popular method of caching involves the archiving of the complete HTML response generated by the webserver and then stored as a static content on the hard drive for retrieval at a later date (usually with some mechanism responsible for expiring the content upon certain actions or after a set amount of time).

WordPress 2.5 and the Object Cache… The NeoSmart Files

Joyent: free accelerators for facebook apps

31 Mar

Facebook, Joyent and Dell have partnered to provide free scalable, on-demand infrastructure from Joyent to Facebook developers. Joyent’s Accelerator on-demand infrastructure (peered with Facebook’s datacenter!) provides the very best load balancers, routing and switching fabric, x86 servers and storage from Dell. Facebook developers can take advantage of Joyent Accelerators to quickly launch Facebook applications capable of scaling to millions of users. All for free.
What’s Included?

A Joyent Facebook Developer Accelerator includes everything you need to develop and deploy your Facebook application. You get root access to a virtualized machine that includes all the tools for developing Facebook applications in PHP, Rails, and Python.

Note: We do not currently support Windows, and do not plan to do so in the foreseeable future.

Joyent: Facebook Developer Program

more on the animation front: The Go ActionScript Animation Platform / GOASAP

7 Feb

Go is a community initiative to create an open platform that makes scripting animation tools possible for any AS3 coder.

The goal of Go is to provide a shared base that many different animation systems can branch from, in the hopes that eventually it will become easier for Adobe developers to work with multiple systems or build their own, with some common threads between them.

Go also aims to support both linear (tweened) & physics-based animation, so that these can work together seamlessly from one set of base classes.

Go does not have a syntax of its own, but invites you to create tools that define the animation syntax you’re most comfortable with using.

based on the benchmarks looks promising. well thats it for my, how are things in the real world venture – time to go back to my hole and code

Go to Go

Powered by ScribeFire.

No I'm not going crazy, I'm just getting geekier

26 Jan

ted to find myself thinking really weird whenever i spaced out. at first it seemed like i was thinking about seo algorithims, but then as time progressed and i let my mind roam more it started to appear like search / indexing algorithims.

Needless to say this was all out of my range of knowledge. So i was kinda freaking for a bit like: umm i think i’m going crazy, because i don’t know how the heck this is making sense. about a month into this i was actively letting my mind do its algorithim thing about once every other day and trying to figure out how to apply them to stuff. 2 months into it i contacted a friend of mine who knows a bit about stuff like this because i was starting to think i might just be crazy and looking to much into mental gibberish. My homegirl quickly told me, not only was i not crazy, but there’s ton of people who write on the subject.

fast forward 4 months later, I’m not doing the algorithim thing as much, but i’ve been looking around the net to figure out how they could be used. I’m supposed to be meeting with a friend of a friend who develops encryption algorithims to see if any of this makes sense to him, but today i came across the netflix algortim project while looking for the netflix video rip project.

turns out theres something that all this applies to: Machine Learning. So it looks like it’s time to finally head back to school, because i’m gonna have to do alot of learning to understand all of this. But hey maybe 20 years from now i’ll be one of the few web developers with a dual degree in graphic design and ai – lol.

Oh yeah on the note of school, i’m gonna start looking in la, once i’m settled, for weekend classes in graphic design. anyone know any good spots for me to start learning about ai (non web)?

ai coder idea

Machine learning – Wikipedia, the free encyclopedia

elsid out

Powered by ScribeFire.

web accessibility testing

9 Nov


Cynthia is a web
content accessibility validation solution, it is designed to identify errors in
design related to Section 508 standards and the WCAG guidelines. The main
purpose of this portal is to educate web site developers in the development Web Based content
that is accessible to all. This online test only validates one page at a time.
Note this demo will test about one (1) page per minute / per site.


Full Options – Cynthia Says Portal Tester

Powered by ScribeFire.