Matt Woodward's posterous

Matt Woodward's posterous

Matthew Woodward  //  * CFML, Grails, and Java Developer
* Principal IT Specialist, US Senate
* Open BlueDragon Steering Committee Member
* All-Around Geek

May 9 / 3:20pm

cf.Objective() NoSQL BOF

Heads up that on Friday night of cf.Objective() I'll be facilitating a BOF on using NoSQL databases with CFML, so if you're interested in things like CouchDB (my favorite thing on the planet as of late), MongoDB, or any of the numerous others please come to the BOF!

All skill levels are welcome so come to learn, come to share what you've done, or come to mock crazy people like myself who think the relational model is the biggest hoax ever perpetrated on the technology world and that we should have been using document-based datastores all along. Yes, that statement is meant to incite you to come to the BOF if you think I'm wrong, but I do believe it to a certain extent. ;-)

When I say I'll be facilitating a BOF I mean just that--BOFs are meant to be highly participatory, free-form discussion forums, so while I'm happy to show off what I know about CouchDB, I'd personally love to learn more about some of the other NoSQL databases from people using those, and would love to have some heated discussions about NoSQL in general.

See you Friday night at 8 pm!

Filed under  //  Conferences   CouchDB   NoSQL   Presentations   cfobjective  
May 9 / 3:04pm

Prerequisites For My cf.Objective() Presentation on Tomcat

Quick note to anyone planning to attend my "Running Multiple CFML Engines on Apache Tomcat" talk at cf.Objective() -- even though this is only a one-hour session, with just a bit of prep work you can easily turn this into a hands-on session since I only have a few slides and it will be mostly demo. You don't have to follow along to get a ton of great info from this session, but if you want to follow along please grab the following ahead of time:

Some additional notes:

  • You do NOT need to install Tomcat ahead of time
  • You SHOULD install Apache ahead of time
  • If you want to use Adobe CF as one of your engines, you'll want to run the installer ahead of time and for the installation type choose "generate a WAR file" and have that available on your laptop. Note that even if you have Adobe CF installed on your machine already, you can run the installer again and generate a WAR file without affecting your existing installation.
  • For Open BlueDragon and Railo, grab the WAR files and have those handy
  • Your operating system doesn't matter--all the Tomcat stuff is pure Java, so whether you're on GNU/Linux, Windows, or Mac it's all good.

If you have questions/concerns ahead of time please comment here or email me. See you at cf.Objective()!

Filed under  //  CFML   Conferences   Presentations   Tomcat   cfobjective  
Sep 12 / 8:56am

My CFFree Session Presentations From BFusion

Yesterday I had the great opportunity to spend an entire day covering the free software CFML engines at BFusion in Bloomington, IN, assisted by Adam Haskell (thanks Adam!). It was fantastic to be able to do a deep dive into building and deploying CFML applications on a free software stack, and I got a lot of good feedback from the attendees.

If you couldn't attend and are interested, the Ubuntu VM we used in the course is available on Dropbox (3.8GB).

Here are the presentation slides on Google Docs--make sure to go down to "Action" at the bottom of the screen and select "Show Speaker Notes" because otherwise the slides don't make a lot of sense. ;-)
  • Session 1
    • Introduction to Free Software and Open Source
    • Introduction to Free CFML Engines
  • Session 2
    • Installing Open BlueDragon and Railo
    • Configuring Apache and Tomcat
  • Session 3
    • Exploring OpenBD and Railo
    • Enhancements in OpenBD and Railo
    • Deploying Applications
  • Session 4
    • Using the OpenBD Debugger
    • Extending OpenBD and Railo
    • Monitoring Your Applications With VisualVM and Lambda Probe
    • CFML on Google App Engine

Thanks to the attendees for participating in what I hope was a useful and informative session. Whether or not you were at BFusion, feel free to email me with any questions you have about anything related to free/open source CFML.

Filed under  //  BFusion   CFML   Conferences   Free Software   Open BlueDragon   Open Source   Presentations   Railo  
Aug 19 / 2:06pm

Get Your Hands Dirty at BFusion/BFlex

BFusion/BFlex is coming up on September 11 and 12, 2010 in lovely Bloomington, IN. You need to be there, and here's why.

  • $30 for one day or $45 for both days is one of the best deals you'll find in the conference world. (No, I'm not missing a zero at the end of those prices!)
  • BFusion/BFlex is all hands on, all the time. This isn't a passive event by any stretch. You come armed with your laptop and you get to learn from the best people in the business.
  • Multiple all-day classes in both CFML and Flex are available. On the CFML side you can learn Mach-II from the great minds behind it (namely Peter Farrell and Kurt Wiersma), you can learn CFML from scratch from the great Adobe instructor Matt Boles, if you're a programmer already but want to learn CFML you have none other than Simon Free at your disposal, and if you're an open source junkie like me or just want to learn more about the free CFML engines, I'm giving an all-day in-depth class on that.
  • Great for all skill levels, from pure beginner up to advanced developers. There's literally something here for everyone so you don't have an excuse not to come. Just check the BFusion and BFlex schedules and tell me you don't see something interesting!
  • It's a nice intimate environment where you can corner speakers or other attendees and get whatever help you need.
  • Indiana University is a great venue with great facilities. Power and Internet for all!
  • Bloomington is a great town with tons to do.

I've been invovled with BFlex/BFusion since the first year and it's one of my favorite conferences. I'm particularly excited this year to be able to help people delve into the open source CFML engines, so I hope to see lots of you there.

Great training, great price, great location, and great people. What are you waiting for? GO REGISTER NOW!

Filed under  //  BFusion   CFML   ColdFusion   Conferences   Flex   Free Software   Open BlueDragon   Open Source   Railo  
Aug 1 / 1:56pm

My CFFree Presentation from Dallas TechFest

Click here to download:
CFFree_Building_and_Deploying_with_notes.pdf (4.22 MB)
(download)

Dallas TechFest was last Friday and although I was sad to be missing the final CFUnited, TechFest was a blast. It was incredibly refreshing to see 400+ CFML, PHP, .NET, Java, and Flex people all in the same place at the same time for some geek cross-pollination. This doesn't happen nearly enough so thanks to all the organizers of the event, all the great speakers, and to Dave Shuck for inviting me to speak.

The talk I gave was entitled "CFFree: Building and Deploying CFML Applications on a Free Software Stack." This was a 90-minute introduction to developing, deploying, testing, and monitoring CFML applications using Tomcat, Open BlueDragon, Railo, and a plethora of other free software applications and tools.

If you didn't make Dallas TechFest this year and are interested in this topic you're in luck! I gave everyone who attended my session a VirtualBox VM that has all the free CFML goodness installed on Ubuntu 10.04, and you can download the VM from my Dropbox (2.5 GB).

You can also check out the presentation slides above (view or download PDF). My apologies that the speaker notes get cut off in the PDF version, but I created the presentation in Google Docs and as far as I can tell there's no way to control the font size of the speaker notes in the PDF. You can also view the presentation directly in Google Docs; just make sure to click "Actions" at the bottom then "Show Speaker Notes" to view the speaker notes since the slides alone don't tell you all that much.

As always if you grab the VM or read through the presentation and have any questions about any of this feel free to contact me. I'm considering doing a couple of screencasts on this topic because due to time constraints I had to breeze over some of the configuration details, not to mention some of the free software goodness I didn't get to show at all.

If you want to learn more about free CFML in person, next up on the calendar is a full day hands-on session that Adam Haskell and I will be doing at BFusion in September, and then of course three full days at OpenCF Summit in February 2011. Hope to see you at one or both of these events!

Filed under  //  CFML   Conferences   Free Software   Open BlueDragon   Open Source   Presentations  
Jul 24 / 10:40am

Attend Dallas TechFest for only $25!

Dallas TechFest is a great multi-technology event that's coming up on 7/30. There are tracks on Java, Flex, PHP, .NET, and most importantly CFML, so it's not only a great place to get your CFML fix, but also to engage in some all-too-rare cross-pollination between technologies. (The tech community doesn't do nearly enough of this sort of thing in my opinion.)

The CFML track doesn't have details on the track page unfortunately, but when you check out the speakers page you'll see the following great CFML speakers:

I don't know what the specific topics for some of the speakers are, but I can tell you that I'll be speaking on Building and Deploying CFML on a Free Software Stack, Jeff Lucido is speaking on Open BlueDragon for Google App Engine, and I'm pretty sure Steve Good is speaking on Mura. With this lineup I'm sure all of the CFML topics will be great!

UPDATE: Steve pointed out in the comments a big oversight on my part--you can check the Agenda page to see all the details of all the tracks.

There are also some big names from other technologies at TechFest as well, such asScott Davis (Grails guru extraordinaire), Ted Neward (.NET developer and consultant), Mark Piller (Midnight Coders), and Craig Walls (SpringSource) to name but a few.

Sounds excellent, right? Well, today's your lucky day. If you haven't registered yet there's still time, and there's a big discount to boot! Register now and use the discount code coldfusion to get in for only $25. That's right, a mere $25 for all this geeky goodness.

See you there!

Filed under  //  CFML   ColdFusion   Conferences  
Jun 3 / 6:09pm

Open Source Bridge - The Story of Spaz: How to Give Away Everything, Make No Money, and Still Win

Edward Finkler http://getspaz.com @funkatron http://funkatron.com
  • non-technical talk--"why I do what I do"
    • learned how I define what success and happiness are
  • Spaz is a personal project -- about 3 years old
    • twitter client -- "your special twitter friend"
      • based on original logo people thought he was making fun of mentally retarded people
      • actually is a picture of clay aiken from early american idol
  • Early 2007
    • work started on Spaz
    • had done a couple of open source PHP libraries in the past
    • had only done open source for other developers, not for end users
    • started work in RealBasic on Mac
      • also the author of LameBrain, wrapper for LAME
    • started getting interested in twitter API
    • not many other Mac clients for twitter at the time
    • article written up in ars technica about it
    • pownce came along about the same time
      • came out with desktop client, written in apollo (now AIR)
    • RealBasic wasn't set up to make it easy to make it look non-standard or skin things
    • silverlight was also being released about this time, also Java FX
    • particularly interesting aspect of AIR was that you could make apps in HTML/CSS/JS in addition to Flash
      • looked at using Flex, but not a fan of monotheistic technology
      • Flex community is a lot like the MS development community--one official source of information, not a lot of community sharing going on
        • quite a contrast with something like PHP where everyone shares in a bunch of different ways
      • didn't like having to go through the official channels to try and figure things out
        • really hard to simply search for things on the internet and find examples with Flex
    • twitter was really flaky at this point--had to write the code very defensively
    • learned a ton by digging into this--crash course in javascript
    • driven because he was interested in it and enjoyed working on it
      • "I liked what it did, and I used it"
  • November 2007
    • Adobe had AIR Developer Derby in mid-2007
      • submitted Spaz on a whim
      • got a call in October 2007 from Adobe saying he won
        • got to go to Adobe MAX conference, lots of PR around it
    • Adobe didn't give a rat's ass that it was open source
      • they liked it because it was pretty
      • only got about 5 submissions on the HTML side of things
    • was at the AIR booth--people asking tons of questions that frankly Adobe should have been answering
      • turned into evangelist of sorts
    • cool that Spaz got known in the wider world
  • 2008-2009
    • started to get emails criticizing the name--"why do you hate the disabled?"
      • happened quite a bit
    • tons of twitter clients released in 2008
      • lots of them written in AIR
      • a few clients were a lot better with marketing themselves -- biggest example is TweetDeck
        • people spending full-time on it, went after venture capital, etc.
        • cool if you want a twitter client that fills your whole screen, but wasn't what he wanted to do
    • seeing success of tweetdeck was hard
    • the thing I like about open source is creating something and getting ideas from people, hearing about how they're using the product, etc.
    • lots of end users were saying stupid things like "Spaz sucks"
      • big disconnect--creating products for end users is pretty different from creating developer libraries
      • people were dismissive and mean -- made it not fun
      • eventually learned to respond with humor to baseless criticisms
        • helped to not get as upset about things
    • started seeing companies that were hanging off twitter and providing services that twitter doesn't provide
      • twitter has started to stomp out all the ancillary business around twitter
    • started getting offers from companies around spaz
      • people offering money to add specific services to spaz, e.g. twitpic
    • wanted to continue to provide an open source, transparent twitter client
      • in one case took money as a donation to offset overall development time into spaz
      • wasn't interesting in doing this in general
    • this underlined a specific way that he wasn't willing or able to compete with other clients that were out there
      • would sacrifice transparency around the project
      • realized how screwed up and evil tech journalism is--fundamentally wrong
        • actively manipulate how people perceive things, don't give coverage to things that don't play their game
    • started to realize he couldn't compete with other clients because of all the extraneous junk that goes on
  • palm webos -- jan 2009 - june 2009
    • got call to see if he was interested in working on apps for the new webos
    • palm wasn't really known as an open source company
    • said up front he wanted to keep the app open source--palm didn't object
    • web development as a rule is pretty open, but palm didn't really have this understanding in their DNA
    • had to sign really strict NDA
    • palm was rushing things out, documentation was terrible
    • went to a developer event at palm--could talk about things, but couldn't share the code he had written--against the NDA
    • this six months sucked because couldn't make something and share it with other people
    • palm didn't tell him another company was also working on a twitter app for webos
      • found out from someone else--no information sharing going on
      • bunch of secret stuff--wasn't fun
    • didn't get a development device--emulator ran 3X faster than the actual phone
      • didn't write specifically to their proprietary platform so it ran slow
      • another twitter app that did write to the proprietary bits ran faster
    • got email from palm asking not to release source code
      • had told them first thing he was going to open source it
      • lot of wtf moments
      • decided he would never work for another company like this under an NDA
      • palm didn't get the sharing culture--they get it much better now
    • two guys from ajaxian got hired to better interface with the development community
      • immediate changes for the better--hope HP doesn't screw it up
    • reminded me of lessons i should have learned the first time around
    • friend recommended book -- "ignore everybody and 39 other keys to creativity"
      • the thing that you really like doing, if you rely on it for income, it'll become less enjoyable and it will change how you interact
      • when spaz became something that was being defined by standard definitions of success, the process became less enjoyable
      • had to redefine what success was
  • july 2009
    • spaz statement of purpose
      • can keep going back to this and referencing it to remind himself of why he's doing what he's doing
    • spaz was built for the sake of building it. it is not a means to an end. however, creating it has had several good consequences.
      • point of it was to build something and build something good
    • spaz demonstrates that making things is good, and sharing how you make them is better.
      • creative endeavor in and of itself is good
      • sharing is what makes me happy
    • spaz is a necessary counter to closed, hidden technologies. spaz must always be open.
      • source code must always be open and have to be transparent about the intentions of the project
      • important that we have options, even if they aren't the most popular or defeat other projects
    • the value of spaz does not lie in the judgments of others, but in the process of building it, and the enjoyment derived by those who use it.
    • we welcome anyone who wishes to participate in the spaz project with open arms, as long as they understand and respect the purposes of the project.
    • the spaz project values clear and open communication between participants.
    • having the statement of purpose helped keep things going when it was frustrating
  • 2nd half of 2009
    • not a lot happened
    • worked on getting webos version better
    • started on spazcore to share common things between all the different platforms
    • discovered didn't have time to try to keep multiple versions going
    • started working on community building
  • diversity statement
    • women are under-represented -- 10-15% in IT as a whole, open source it's more like 2-3%
    • worked with a group called phpwomen
    • largely lifted from python's diversity statement
  • rest of 2010 -- cultivating a community
    • initially was using google code for everything
    • have found that github works better
      • a lot of people use git (particularly js people), more social aspects oriented around git (easier to fork, etc.)
      • potentially attracts more people
    • tenderapp.com and lighthouseapp.com
      • tender oriented towards end-user support -- offer free accounts for open source projects
      • lighthouse more oriented towards developer issue tracking, setting milestones, etc. -- also have free accounts for open source projects
    • if you only have roadmap, etc. in your head it's very hard to get people to help you
      • need to break things down into issues of various size
      • schedule people's time for them in the sense that you give them bite-sized tasks
    • hackathon
      • great way to get more people involved
      • helps to have a schedule
      • done online with irc
    • have someone who's more or less dedicated to doing community related tasks
Filed under  //  Conferences   Free Software   Open Source  
Jun 3 / 4:29pm

iizip - Hacking Together Your Own Dropbox

Ben Dechran, Sputnik Agency (Australia)
  • works for a marketing agency, lots of photoshop files thrown around
  • file server which works great most of the time unless ...
    • people forget to put the files on the file server
    • people forget to rename a file before putting it on the file server and delete the old file
    • people don't put a file on the file server and go on vacation
  • dropbox nice solution, but has issues
    • works well for small companies, small groups, unconferences, etc.
  • problem #1 -- storage space
    • in our case, needed 3TB of space
  • problem #2 -- need internet connection
    • if connection goes down, you have the files but you lose the sync
  • problem #3 -- dependent upon third party
    • what if they go down?
  • problem #4 -- all or nothing
    • every person replicates everything
    • dropbox supposedly doing selective sync
  • problem #5 -- user management
    • users can't be managed by your company's infrastructure
  • problem #6 - big bad world
    • security and privacy
    • it's encrypted, but you're sending data out to someone else's servers
  • other options
    • ifolder - open source project by novell, written in .net
      • tricky to set up
      • slow
      • packaged for windows, mac, opensuse
  • decided to roll my own--needed ...
    • local files
    • monitor for changes
    • versioning
    • conflict resolution
    • transparent -- install and forget
  • attempted solutions
    • tortoisesvn -- people forgot to check in, etc.
    • cron job to push changes to svn
      • some of the changes were hard to detect
      • if someone deletes a directory on their hard drive, deletes the metadata
    • tried git -- since it's distributed it solved some of the issues with svn
  • for synchronization
    • inotify, inotifywait -- in the linux kernel
    • notify-send -- could use this for bubble type notifications in dropbox
  • for conflict resolution
    • grep the git status
  • iizip is the combination of all these various tools
    • currently the project is a bunch of scripts; eventual goal is to have a package that would be deployed/installed on local machines
    • iizip-init -- creates git repository and iizip directories
    • the scripts mostly map to the git commands
      • e.g. send checks in locally and also pushes to remote repository
  • someone in the audience suggested looking into using couchdb in similar fashion to how ubuntu one works
  • what's in the pipeline?
    • partial checkout so not everyone has to have every file locally
      • idea of subscribing to specific directories--IMAP already does this
    • push changes from other machines
      • currently there's a cron job that runs on the local machine
      • dropbox immediately pushes changes to all machines
      • considered using xmpp to handle this, but IMAP has persistent connections and also supports directories
    • multi-user
      • currently can't run more than once on the same machine since the directories are hard-coded
  • unix tools philosophy -- many small tools linked together to achieve a larger goal
    • also makes it easier to port to other operating systems
  • unison -- would in theory do all of this so worth checking out
  • potential issues -- git doesn't track empty directories
    • if it's empty you may not care
Filed under  //  Conferences   Free Software   Open Source  
Jun 3 / 3:15pm

Open Source Bridge - Relational vs. Non-Relational

Josh Berkus, PostgreSQL Experts Inc.
  • overview focused on choosing what type of database you need vs. investigation of any specific database
  • up until a few years ago there were only a handful of options for open source databases
    • most were sql/relational
    • a few written in java
    • only really exciting thing going on in the relational world is postgres vs mysql
  • today there are many more open source databases
    • as many as 5 dozen now?
  • databases for lots of different purposes, but lots of people want to lump a lot of the new ones under the "nosql movement" label
    • not so fond of this term
    • has implication that every database that doesn't have a sql interface is more or less identical
    • all non-relational databases aren't the same
    • have graph, document, key-value, distributed, hierarchical ... quite different from one another
    • some of the non-relational databases have sql interfaces
  • all relational databases aren't the same either
    • embedded, oltp, mpp, streaming, c-store ...
  • mythbusting
    • "revolutionary" is bandied about a lot but database technology goes back a long way
    • not really any new database designs in terms of fundamental architecture
    • are new implementations and combinations of design
    • last "new" thing was map-reduce in 2002
    • even couchdb is largely similar to Pick, which was created in 1965
    • when looking at new databases, don't look for revolutionary concepts, look for good implementations
    • what's going on right now is actually a renaissance of non-relational databases
  • myth: "non-relational databases are toys"
    • google - bigtable
    • amazon - dynamo
    • facebook - memcached
    • us veterans administration - pick, cache
  • myth: "relational databases will become obsolete"
    • xml databases were supposed to replace rdbms ca. 2001 -- didn't happen
    • rdbmses evolved to include xml functionality
    • one of the things we'll see out of the current non-relational innovation is that some of the implementations will hybridize with one another
  • myth: "relational databases are for when you need ACID transactions"
    • transactions != relational -- orthagonal features
    • robust transactions without relationality: berkelydb, amazon dynamo
    • sql without transactions: mysql isam, ms access
  • myth: "users are adopting nosql for web-scale performance"
    • sometimes it is, sometimes it isn't
    • performance test done by myyearbook.com
      • benchmark of key/value storage and retrieval
      • only real difference in performance is between databases that guarantee durability and those that don't
    • horizontal scalability
      • some non-relational databases are built for horizontal scalability and some aren't
      • complexity of implementation rises with the ability to scale out to a massive number of nodes
  • myth: "one ring theory of database selection"
    • "what's the best database to use?" - wrong question
    • don't need to use only one database
    • choose the db that meets your applicaton's goals, or use more than one together
    • use a hybrid
      • mysql ndb
      • postgresql hstore
      • hadoopdb
  • but what about choosing between relational and non-relational?
  • relational oltp databases
    • transactions: more mature support
    • constraints: enforce data rules absolutely
    • consistency: enforce structure 100%
    • complex reporting: keep management happy!
    • vertical scaling (but not horizontal)
  • sql vs. no sql--sql promotes ...
    • portability
    • managed changes over time (ddl)
    • multi-application access
    • many mature tools
    • but, sql is a full programming language and you have to learn how to use it
  • no sql promotes ...
    • programmers as dbas
    • no impedance mismatch
    • fast interfaces
    • fast development and deployment
    • but, man involve learning complex proprietary APIs
      • in some cases not easier than sql
  • main reason to use sql-relational databases
    • "immortal data"
    • your data has a life independent of this specific application implementation
    • important to be able to access data accurately and consistently forever
  • how DO i choose?
    • define the problem you're trying to solve
      • what is it that my application wants to do with this data and how does it want to do it?
      • i need a database for my blog, i need to add thousands of objects per second on a low-end device, etc.
    • from the definition you create you can define a database shopping list
      • define the features you ACTUALLY need
  • fit the database to the task
  • "I need a database for my blog"
    • use anything!
    • no open source databases that wouldn't support someone's individual blog, flat files would even work
  • "I need my database to unify several applications and keep them consistent"
    • high-end sql-relational database best choice for this
    • "PostgreSQL: It's not a database, it's a development platform"
  • "I need my application to be location-aware" -- geo applications
    • PostGIS - geographic relational database
    • queries across "contains" "near" "closest"
    • complex geometric map objects
    • couchdb spatial and spatialite are now available as well
  • "I need to store 1000s of event objects per second on a piece of embedded hardware"
    • db4object -- embedded key-value store
    • others: berkeleydb, redis, tokyocabinet, mongodb
    • db4object
      • project was german train system -- records data every few milliseconds
      • low-end embedded console computer
      • simple access in native programming language (java, .net)
  • "I need to access 100K objects per second over thousands of connections from the web"
    • memcached - distributed in-memory key-value non-persistent database
    • use: public website
    • typically supplements another database
    • alternatives: redis, kyototyrant, etc.
  • "i need to produce complex summary reports over 2tb of data"
    • luciddb - relational column-store database
    • for reporting and analysts
    • large quantities of data
    • complex olap and analytics
    • used along-side oltp running production apps
  • "I have 100s of govt documents I need to serve on the web and need to mine the data as cheaply as possible"
    • CouchDB
    • storing lots and lots of government documents that didn't have a consistent format (don't know content or structure)
    • used in combination with postgres to keep structured metadata
    • couchdb is also great for mobile apps
  • "I have a social application and I need to know who-knows-who-knows-who-knows-who"
    • surprisingly hard question to answer with a normal db
    • use a graph database -- neo4j is most popular open source one
    • social network website
    • 6 degrees of separation
    • "you may also like"
    • type and degrees of relationship
  • "I get 1000s of 30K bug reports per minute and I need to mine them for trends"
    • used on mozilla firefox crash reports
    • hadoop -- massively parallel datamine
    • hadoop + hbase
      • reports are then put into postgres for viewing
  • conclusion
    • database systems do better at different tasks
      • every database feature is a tradeoff
      • no database can do all things well
      • need to make tradeoff decisions when picking databases
    • relational vs non-relational doesn't matter
      • pick the database(s) for the project or task
Questions
  • how difficult to migrate from something like couchdb to postgres?
    • depends on how much data and in what form
    • since couchdb works with json that's pretty easy
    • if you want to take the document structure out of something like couchdb and put it into a relational model, the decomposition process will be complicated
Filed under  //  Conferences   Databases   Free Software   Open Source  
Jun 3 / 9:51am

Open Source Bridge - Thursday Keynote: Mayor Sam Adams on CivicApps

Sam Adams, Mayor of Portland
  • CivicApps for Greater Portland
    • interaction at last year's OSB kicked off regional effort to put Portland in the forefront of open source and open data
  • update on how Portland is leading in the area of open source
    • asked for city government to be an early client of open source work that is happening locally
    • also asked for financial assistance with open source projects
  • civicapps can change the relationship between the government and the people they serve
    • give people new tools to get at what they need
    • greater accountability
    • example: iphone app where people can take pictures of potholes--this gives the photo and the exact coordinates of the pothole
      • submitters get notification when the pothole they reported is fixed
      • idea of government reporting back directly to citizens is huge source of satisfaction
      • now the challenge is to provide this type of customer service on more platforms
  • civicapps has gotten a lot of national attention because it's regional--isn't specific to one city
    • portland isn't that unique--60K people who work in portland but don't live in portland
    • lots of other open data apps are specific to cities--not as realistic to the daily life of people
  • contests to develop apps around open data
    • area that needs a lot of work ("significant mystery to citizens") is the inner workings of the decision making process
      • e.g. city council issues being considered
      • city council agendas can have 60-150 items on them
      • mystery to citizens how the work actually gets done
      • need to make actual decision making easier to access and more understandable to citizens
  • have tried to surround these efforts around an economic development strategy
    • digital development is now one of the four targeted industries for economic assistance
    • investigated what local assets match growth trends regionally
  • portland's value proposition
    • not silicon valley and don't want to be
    • where portland can compete and win on a proportional basis is that there's a more diverse group of technology folks in portland
    • clearly is smaller, but especially around software, there's a greater diversity of different talents and approaches than anywhere else in the world
    • portland technologists are also very agile
    • passion in portland in these areas is huge--everyone involved tends to work together very well
  • how can portland's government help technologists succeed?
    • recession has hit some businesses, but software/technology has overall survived better than other industries
    • has been a lack of access to capital to bring best ideas to market
    • started portland seed business fund -- direct result of requests from software industry
    • http://mayorsamadams.com -- more details on this fund
    • portland development commission -- funded "Portland Ten"
      • bootcamp that works with 10 startups
      • access to capital, connection to very best thinkers from around the world
      • "tough love"--helping ten startups get to a million dollars a year in revenue
    • survey will be sent out to people participating in all these efforts--really need the feedback to make sure we stay on track
  • "I want you to take over the world from your base here in Portland"
  • 25 people involved with civicapps here today to help people hack on data and apps
Rick Nixon - project manager for civicapps
  • first ever Civic Code Day
  • lots of people here responsible for lots of data for the city, trimet, civicapps web site
  • role of govt: supply data
  • role of citizens: do something with the data
  • seeking to transfer data collection effort to citizens as well
    • open source the web site, number of other efforts going on
Filed under  //  Conferences   Free Software   Open Source