A Color Animation Class for C#
Something you see all the time in Javascript is using the flash and fade of the background color of an object to indicate some form of activity - success, error, etc. There is nothing that makes this easy in C#, but I managed to do it using some hacky Invoke calls.
Code is after the break, but you can download the entire test project: ColorAnim Test Project (VS2005)
BarCampPortland 2007 – Visual Communication of Information
Information Visualization
Types of information to display
- Calendars
- time lines
- presentation
- geographical mapping
- mapping social networks
-
The japanese are famous for coming to a presentation with one slide with lots
of stuff on it. And spend the hour explaning it.
Teds Talks - Gap Minder - www.ted.com/index.php/talks/view/id/92
Visual thesaurus - Making it dynamic
Animate a series of snapshots over time.
the context of information is important.
Shopping by color - http://etsy.com
measuring the health of the community as a fish tank:
Clarity of the water
number of bubbles
which fish
arthur brock fishtank
think Geek usb bunny ? nabaztag: the wifi enabled "ambient" bunny
http://www.nabaztag.com
Way finding
Book: "Way Finding"
Presentation of Dashboards
Fishtank is a form of dashboards
Different metaphors
- using colors as a measurment
- mapping network into Doom
- mapping network into sounds of the country (birds + water )
-
read more poetry
The icons on the OLPC laptop are incomprehensible. the bike warnings by the streetcar tracks are uneqivocal...
http://Visualcomplexity.com
http://infothetics.com
http://mapmind.org
people in general do not make leaps to understanding things - jean
Discussions about cross-cultural icons.
What is the thing that makes meaning? What is the picture that makes people
see the meaning of the image.
dialogue mapping
compendium is the tool for diagramming the oure of a conversation
Visual Search engine
http://www.kartoo.com
http://www.quintura.com
http://cnet.com - each article has a sidebar with contextual links
http://www.theyrule.net - interactive network visualization of the connections between the boards of directors of major corporations
http://press.jrc.it
http://www.visualthesaurus.com
James Burke - Connections
Tell a story to align the relationships between the facts.
yahoo vs google as presentation metaphores.
Tools
GraphViz - http://www.graphviz.org
compendium - http://www.compendiuminstitute.org
Resources
http://www.ted.com/index.php/talks/view/id/92
Visual Thinking by Robert Horne
http://www.edwardtufte.com
From the pibb session:
*
I have a moonedit of InformationVisualization going
Saturday, May 12, 2007 5:22:30 PM
www.ian.dees.namehttp://www.ian.dees.name/
*
Visualize... or search?
*
Everyone's bringing their own take on visualization:
*
...some with social networking tag clouds...
*
...some with literal, geographic maps....
*
...some with novel "search by color" (http://www.etsy.com)
*
Folks mentioned Hans Rosling's data visualization video. "Worth the 20 minutes" seems to be the verdict.
Saturday, May 12, 2007 5:24:12 PM
semaphoriahttp://semaphoria.myopenid.com/
*
visualization of information - visualcomplexity.com; etsy.com, mapmind.org
Saturday, May 12, 2007 5:24:22 PM
www.ian.dees.namehttp://www.ian.dees.name/
*
Someone's finally mentioned Tufte.
Saturday, May 12, 2007 5:24:48 PM
cygnushttp://cygnus.myopenid.com/
*
/me idly wonders if Brian Ellin is watching this thread. he'd be interested.
Saturday, May 12, 2007 5:25:10 PM
www.ian.dees.namehttp://www.ian.dees.name/
*
Fish tank to vlsualize health care
Saturday, May 12, 2007 5:26:11 PM
semaphoriahttp://semaphoria.myopenid.com/
*
infosthetics.com
*
wayfinding!
Saturday, May 12, 2007 5:27:49 PM
www.ian.dees.namehttp://www.ian.dees.name/
*
Someone mentioned the "USB bunny;" I think they meant the Nabaztag (http://www.nabaztag.com/).
*
Oops -- the auto-formatter sucked in the punctuation -- should be http://www.nabaztag.com
*
Nature sounds as server background noise
*
"Doom" interface as network diagram. Demons == daemons?!? When you kill a process, you _really_ kill a process!
*
"Reducing the cognitive blow"
Saturday, May 12, 2007 5:34:05 PM
www.ian.dees.namehttp://www.ian.dees.name/
*
Pictograms are more cross-cultural than icons
Saturday, May 12, 2007 5:36:32 PM
www.ian.dees.namehttp://www.ian.dees.name/
*
"People in general do not make leaps in understanding things." --Jean
Notes by John Sechrest and Nathan Young
BarCampPortland 2007 – Redundancy and Load Balancing
Problems:
----------------------
Performance
redundancy
Technology:
----------------------
MemCacheD
CARP
- ucarp
- fires virtual ip up/down
- takes a couple seconds
- dead simple
Heartbeat
- does not always fail over properly
pf/pfsync
mod_proxy
- looking at adding support for mod_perl for scripting
perlbal
Alteon
cfengine
SQL:
pgcluster
mysqlcluster
- cannot add and remove nodes at runtime
- only 254 nodes (clients or data sources) - hard limit
Anycast:
-
Misc:
-----------------------
BarCampPortland 2007 – Open Hardware Design
People doing Open Hardware:
-------------------------------
Google Summer of Code
GPLA
Options:
-------------------------------
FPGA
- Slow, but parallel, and cheap
ASICs
- 10 Million press cost, but that is for 1 Billion transitors
- Can buy a small peice of press
-
Misc Notes:
-------------------------------
PSU has a lot of open hardware available from their Rocket division.
- Open GPS modules
- 80211 rocket telemetry - cylidrical patch microwave patch antennas
- show up at an aerospace meeting
PDXBOT
BarCampPortland 2007 – Network Weavers Network
Session Leader: Steve Habib-Rose
neighbornetworking.com
Neighbor Nets, the concept of weaving networks between neighbors at a local level.
Incampus.com
Gracious Space
Network weaving
-----
Social Network analysis - What is more successful, resiliant, more powerful.
Mapping networks - taking a snapshot of the health of a social network.
How do we distribute systems in a way to make it thrive.
Weaving is being more intentional in doing that process.
A Group connected to the Emerging Futures network thought that they might
be able to learn from each other, and how to be better how to do it.
Community of people who like to build communities.
Directory
Discussion list
NetworkWeaver is the the Tag
NetworkWeaversGuild - profession of Network Weaving
certification
Reputation system
health care
Emerging futures network is a group that want to grow the field of social change
Using NetworkWeaving as a way to drive the conversation.
Field Maintenance Authority
Supporting some of the allied efforts like:
OGuild - http://www.oguild.com
Targeted Currencies network
Omidyar network for $15,000
Currencies are anything that incentivize a flow.
Monetary currencies are a subset.
Flow has movement.
Functions/metrics based on numbers often are used as repuation, but they don't
have very much meaning.
Quality relationships can support relationships between two different people who
don't know each other.
Steps:
------
Identity
Reputation
Expertise
The big advance of Linked-In is that they guard the permission to connect closely.
Local Organizing and the Panetary Brain
How do you communicate knowlege among people?
Resources
----------
http://www.oguild.org
http://www.emergingfutures.org
http://www.omidyar.net/home
http://www.networkweaving.com
http://www.bambora.com
http://www.aboutus.org/Category:networkWeaver:AreaOfFocus
http://www.wiserearth.org/user/habib
Regular meetings
Vega
20th and
2nd and 3rd thursday of the month
http://www.neighbornetworking.com
http://www.networkweavers.net
who is here
------------
Steve Neighorn
Todd kenefsky
john Sechrest
Geoffry Burling
Barry Amison (sp)
Ben Kaplan - Oregonian
Brad Upchurch - 3d Design, video production
Steve Habib-Rose
Jean Russell
Notes by John Sechrest
BarCampPortland 2007 – Intro To Haskell
Session Leader: Bart Massey
Bart Massey
Donnie Berkholz
John Sechrest
tim Bauman
Tim Savard
Jesse Hallett
Haven Hash
Iseff
Maurice Dodik
Jek
Phil Tomson
Sam Keen
What is haskell? And why should I care?
Bart thinks that Haskell is the next big thing.
Why? isn't C++ enough for anything?
Haskell is a functional programming language.
We build pieces that are so modular, so that mix and match is trivial.
What do you give up?
-Global Variables...
- Variables all together....
What is the difference between a name for a value vs a variable?
Variable is the mapping from a name to a location.
There is no location in haskell
In trade, you get modularity.
GHCI -
interactive , incrementally compiled language
It does static type checking.
no type declarations. The program guesses the type.
Open source community has adopted Haskell.
Haskell programming can be harder , because the lack of variables.
Indentation does matter
No brackets
Not end markers
it is case senstive
it does lazy evaluation
you can do type annotation
emacs count.hs
main = do
printCount 10
where
printCount 1 = putStrLn 1
PrintCount n = do
putStrLn (show n)
printCount ( n - 1 )
gch count.hs
[1,2,3] A list - First class objects
head [1,2,3]
tail [1,2,3]
let count x = x: ( count (x + 1) )
let y = count (1)
head y => 1
take 3 y => [1,2,3]
tail y => infinite list
Is there a way to track what code is run.
there is a profiler
Haskell is 15 years old.
How does haskell performance work
Ocamel ?
C?
As a matter of practice 2-200 Times slower than C.
Language shootout
Darcs is a source code control in haskell
WASH - Web in haskell
web apps in haskell
you get concurrency for free
tile :: Int -> Int -> [a] -> [[a]]
Currying
Tile _ _ [] = []
tile n o s =
let cur = take n s
rest = drop ( n - o ) s in
cur : ( tile n o rest)
peak s = ( maximum . map abs . map avg . tile 3 2 ) s
. means composition
Guarded patterns
Lambda calculus
Y combinator -> The function that expresses recursion as a foundation.
If you know ML , it does help.
A program you want to write quickly
pretty sure it is right the first time
get reasonable performance
Access to an active programming community
Resources
-----------
http://www.haskell.org
http://www.haskell.org/tutorial
svcs.cs.pdx.edu/git/ppg.git
truelevel.git
http://svcs.cs.pdx.edu/darcs/minichess
http://darcs.net/DarcsWiki
Notes By John Sechrest
BarCampPortland 2007 – Business 101 For Geeks
Session Leader: Carl Johnson
Who is here:
Marissa Anderson
John Sechrest
Keith Loffstrom
David Simmons
Mike Wills
Donnie Burkhold
Hans Friedrich
Lavonne Reimer
Todd Kenefsky
Carl Johnson
Ethan Selfridge
Mubashir Cheena
Andy Grover
How did you hear about things you needed to know:
* Personal experience
*
*
*
How many people do data driven decision making?
* How many use "usage data"? Yes
* Take it based on user groups
* User surveys need to be personal, clear on purpose of survey/contact
What are some big concerns in growing a business?
* Product improvement
* Payroll
* Building community among customers
Writing a business plan
* How formal is the process?
* Exploring the difference between staying small and doing "big stuff"
How do you learn what you need to learn to start a business?
* Get feedback about name, branding
* What is the audience going to be?
* Have a longer-term direction early on in the process -- this is a chicken/egg problem
* Geeks envision deep technical skills as a business attractor, but innovation is not necessarily foremost in the market. "The devil you know" has some value
* Difference between lifestyle business and a market-oriented business -- scalability; lifestyle business is tied up in the employee(s)
How to change from a lifestyle consulting business to a less personal business model?
* Lifestyle business -- revenue is based on the skills of the person(s)
* Lifestyle is more flexible, finger on the pulse of the industry
* Sticking to one thing can go obsolete in a few years
Habits for a large business do not scale to a small business!
* need to know every day how much cash you have, and don't waste it!
* set up a regular pattern of money management
Corvallis Business arc:
* Local SAO Pubtalk conversations
* Entrepreneur Forum - tech brainstorm
* SWOT Business Facilitation -
* Angel Investors Network
* Business Enterprise Center
* Local business clusters (E-tailing, Relocalization, High Tech, ... )
Business choices:
* Lifestyle vs "real business"
Where are the War Stories about things told
* CEO Roundtable
*
Can it be done virtually?
I would love to see a database of business plans.
Where can I find a good business plan?
Resources:
* http://www.filinginoregon.com
* http://www.oregonhightech.com/drupal/node/22 Researchers guide to commercialization
Notes by Marissa Anderson and John Sechrest
BarCampPortland 2007 – Building Your Business with Drupal
Drupal Portland Group
---------------------
groups.drupal.org/portland
Drupal sites
------------
* http://www.drupaled.org
* http://www.drupal.org
* http://www.sao.corvallis.or.us
* http://www.lug.corvallis.or.us
* http://www.blackpast.org
* http://www.theportlander.com
* http://www.lime.com
* http://www.kpsu.org
* http://www.benkaplan.org
* http://www.plugfinder.com
Drupal modules
----------------
* ubercart.org
* CCK+views
* User Node
Drupal Issues:
--------------
* Easy to set up
* Harder to maintain.
Notes by John Sechrest
BarCamp Portland 2007: Reflection
So there's this thing called BarCamp - (haven't heard of it? you have to check it out). This past weekend was the first BarCamp in Portland, and it went off amazingly well.
Though initial expectations were that it would be a good even if 100 people managed to show up, by Saturday morning there were over 250 people registered on the BarCampPortland wiki. Big thanks and props go out to the vendors, especially Jive, JanRain (and their Pibb platform), and CubeSpace, all of which put a lot of effort and time into the event - and can't forget Microsoft, for that wonderful dinner from the Nicholas they provided.
There were a lot of good sessions, and a lot of very interesting people at BarCamp, and I can't wait for another one!
Nathan Young introduced me to MoonEdit (and later, we discovered Gabby, though I have not had time to use it), and I set up a server Friday night. Saturday, Nathan, myself, John Sechrest, and others used it to take notes during the sessions, and after BarCamp was over, I was able to use the files on the server to put together all the notes. You can find the notes either in seperate blog posts here, or on the BarCampPortland page.
Session I attended:
- Enhancing User Experience
- Dig into Coding for the Browser
- IA Slam
- Open HArdware Design
- Redundency & Load Balancing Web Applications
- Hack Share
I'll see you all at the next BarCampPortland!
