Permalink
Browse files

use talks from the database on talks page

  • Loading branch information...
1 parent 77f963b commit 5ab9fbaf40407e9e59c806dae976cda30ddd9562 @croaky croaky committed Jan 16, 2011
View
5 app/controllers/talks_controller.rb
@@ -0,0 +1,5 @@
+class TalksController < ApplicationController
+ def index
+ @talks = Talk.chronological
+ end
+end
View
12 app/models/talk.rb
@@ -2,4 +2,16 @@ class Talk < ActiveRecord::Base
validates_presence_of :name, :abstract, :speaker_name, :speaker_bio
has_many :resources
+
+ def slug
+ name.remove_mid_word_characters.
+ replace_non_words_with_spaces.
+ strip.
+ replace_spaces_with_hyphens.
+ downcase
+ end
+
+ def self.chronological
+ order("time asc")
+ end
end
View
368 app/views/pages/what.html.erb
@@ -1,368 +0,0 @@
-<section id="free-event">
- <h1>What It Is</h1>
-</section>
-<section id="main">
- <p id="what-it-is">The goal of this event is to act as a welcome wagon for student entering the startup community as developers and designers. The content is driven by what actual startups need right now. Each 10-minute talk is given by a community leader. Further resources on each topic are listed below (this is a constant work in progress: check back often). Startups that are interested in hiring students as interns or full-time employees post-graduation will be available afterwards to chat and hand out information.</p>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="why-work-at-a-startup"></a>
- <h2>Why Work at a Startup? - Angus Davis</h2>
- <div class="left description">
- <p>The people who are attracted to working at startups as designers and developers tend to be passionate, self-motivated, and caring. They care about creating something great and choose the form of a startup because it has fewer barriers to achieving great things.</p>
- <p>Boston and its surrounding cities like Cambridge, Providence (RI), and Portsmouth (NH) are filled with such people. This event is intended to introduce students to this community.</p>
- <h3>Speaker Bio</h3>
- <p>Angus is the founder and CEO of <a href="http://swipely.com">Swipely</a>. He previously founded Tellme, a speech recognition start-up that grew to over 300 employees with venture backing from Kleiner Perkins, Benchmark Capital, and others. In 2007, Microsoft acquired Tellme in its largest-ever acquisition of a private company.</p>
- <p>Angus was also Netscape Communications's youngest employee in 1996 where he was product manager for the flagship web browser. He represented Netscape on the HTML and CSS standards groups and he helped establish Mozilla.org.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://www.paulgraham.com/mit.html">A Student's Guide to Startups</a> &#8220;Till recently graduating seniors had two choices: get a job or go to grad school. I think there will increasingly be a third option: to start your own startup.&#8221;</li>
- <li><a href="http://paulgraham.com/wealth.html">How to Make Wealth</a> &#8220;If you wanted to get rich, how would you do it? I think your best bet would be to start or join a startup.&#8221;</li>
- <li><a href="http://paulgraham.com/cities.html">Cities and Ambition</a> &#8220;As of this writing, Cambridge seems to be the intellectual capital of the world.&#8221;</li>
- <li><a href="http://paulgraham.com/really.html">What Startups are Really Like</a> &#8220;Unconsciously, everyone expects a startup to be like a job, and that explains most of the surprises.&#8221;</li>
- <li><a href="http://www.quora.com/Startup-Advice-Strategy/What-would-the-ideal-web-technology-start-up-team-be-composed-of">What would the ideal web technology startup team be composed of?</a> Opinions from investors, startup founders, and others.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="a-day-in-the-life-of-a-designer"></a>
- <h2>A Day in the Life of a Designer - Caroline Hadilaksono &amp; Micah Rich</h2>
- <div class="left description">
- <p>What do we mean when we apply the term &#8220;passion&#8221; to design and development work? How does passion affect our working day and the artifacts of our output?</p>
- <h3>Speaker Bio</h3>
- <p>Caroline and Micah run <a href="http://weareagoodcompany.com">A Good Company</a>, a design agency, so they could play and have fun all the time.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://www.theleagueofmoveabletype.com/">The League of Movable Type</a> &#8220;Only the most well-made, free &amp; open-source, @font-face ready fonts.&#8221;</li>
- <li><a href="http://www.amazon.com/gp/product/1568987021">Graphic Design: The New Basics</a> Good Design 101 and 201 book for developers who didn't study graphic design in school.</li>
- <li><a href="http://www.amazon.com/Visual-Display-Quantitative-Information-2nd/dp/0961392142">The Visual Display of Quantitative Information</a> Edward Tufte's masterpiece. Many hiring managers will ask, "Are you familiar with Tufte?"</li>
- <li><a href="http://fivesimplesteps.com/books/practical-guide-designing-for-the-web">A Practical Guide to Designing for the Web</a> Techniques for designing your website using the principles of graphic design.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="a-day-in-the-life-of-a-developer"></a>
- <h2>A Day in the Life of a Developer/Hackepreneur - Dharmesh Shah</h2>
- <div class="left description">
- <p>Roll out of bed whenever you're well-rested. Get into work sometime before 10am. Grab some coffee. Talk for less than 15 minutes with your teammates at the daily stand-up. Open your text editor and a Unix shell. Pull the latest code out of version control. Run the test suite.</p>
- <p>Grab the top user story. Create a feature branch. Hack away. Write some tests, watch them fail, make them pass. Commit the code. Get a review from a teammate. Merge the code into the master branch. Push it to <a href="https://github.com/defunkt/cijoe">CI</a> and staging. Test out the feature in a web browser on staging. If possible, deploy to production.</p>
- <p>Repeat. Go home at a reasonable hour.</p>
- <h3>Speaker Bio</h3>
- <p>Dharmesh is the founder and CTO of <a href="http://hubspot.com">HubSpot</a>, a software company building an internet marketing platform. They have an <a href="http://www.archello.com/en/project/hubspot?story=114468">awesome new office</a> in Cambridge. He codes in <a href="http://onstartups.com/tabid/3339/bid/20493/Why-PHP-Is-Fun-and-Easy-But-Python-Is-Marriage-Material.aspx">Python</a> these days.</p>
- <p>Dharmesh previously founded Pyramid Digital Solutions, which was acquired by SunGard Business Systems in 2005. He is an <a href="http://en.wikipedia.org/wiki/Angel_investor">angel investor</a> and has a Masters from MIT.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://www.extremeprogramming.org/rules/standupmeeting.html">Stand-ups</a> One short meeting to replace many meetings. Stand to encourage brevity. What'd you do yesterday? What are you doing today? What's blocking you?</li>
- <li><a href="http://www.extremeprogramming.org/rules/userstories.html">User Stories</a> As a (user role), I want to (goal) so that (reason). This is what really matters: what your users want to do. Automate those desires using <a href="http://cukes.info/">Cucumber</a> and turn user stories into working features.</li>
- <li><a href="http://martinfowler.com/bliki/FeatureBranch.html">Feature Branches</a> A branch of your version control repository focused on just the feature you're writing.</li>
- <li><a href="http://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530">Test-Driven Development: By Example</a> The bible of TDD. The goal: &#8220;clean code that works.&#8221;</li>
- <li><a href="http://www.martinfowler.com/articles/continuousIntegration.html">Continuous Integration</a> The &#8220;CI" build runs your app's test suite in an environment that mirrors production as closely as possible. If the CI build is &#8220;green&#8221; (all tests pass), you can be confident that your app works as advertised.</li>
- <li><a href="http://www.extremeprogramming.org/rules/overtime.html">Sustainable Pace</a> You can't work 24-7 so work smarter, not harder. Be well-rested and work at a steady pace. It makes planning easier, too.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="user-experience"></a>
- <h2>User Experience - Ben Pieratt</h2>
- <div class="left description">
- <p>It can be argued that the most important thing about a product is how its customers feel about it, especially how they feel while they're using it. As a user, do I feel the experience of using the product has been useful to me? Was it easy to use? Was the process of doing what I wanted to do efficient?</p>
- <h3>Speaker Bio</h3>
- <p>Ben is the co-founder and designer of <a href="http://svpply.com">Svvply</a>, which The New York Times describes as "melding social networking and the style maven's obsession with all things beautiful." He holds a Bachelor of Fine Arts from Massachusetts College of Art.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://www.alistapart.com/">A List Apart</a> A magazine "for people who make websites" that explores the design, development, and meaning of web content, with a special focus on web standards and best practices.</li>
- <li><a href="http://www.amazon.com/gp/product/0321344758">Don't Make Me Think</a> A classic on usability. Easy read. Put yourself in the position of the user.</li>
- <li><a href="http://kuler.adobe.com/">Kuler</a> A free service from Adobe to help you pick colors.</li>
- <li><a href="http://dribbble.com/">Dribbble</a> A free social service for designers. Great for inspiration.</li>
- <li><a href="http://www.youtube.com/watch?v=oUazVjvsMHs">Part 1</a>, <a href="http://www.youtube.com/watch?v=_civr9fr4iw">Part 2</a>, and <a href="http://www.youtube.com/watch?v=zddv5Bv7da8">Part 3</a> of IDEO redesigning the (real life) shopping cart in five days.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="typography"></a>
- <h2>Typography - Annie Wang</h2>
- <div class="left description">
- <p>Typography is one of, if not <strong>the</strong>, most important elements of communicating through design. If you were designing a street sign, you'd want the most legible typeface you could find. On the web, designers have significantly more freedom to add their own commentary to the message the words set in the type are attempting to convey. Significantly, the choice of typeface manipulates the meaning of the words.</p>
- <h3>Speaker Bio</h3>
- <p>
- Annie is the designer and developer responsible for <a href="http://hercampus.com">Her Campus</a>. In September 2010, Annie took a leave of absence from Harvard to work full-time on Her Campus. She was a senior studying Studio Arts. Annie was named a Boston Globe's 25 Most Stylish Bostonians and one of Inc. Magazine's 30 Under 30 Young Entrepreneurs in 2010.
- </p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://webtypography.net/">The Elements of Typographic Style Applied to the Web</a> Robert Bringhurst's book <em>The Elements of Typographic Style</em> is on many a designer's bookshelf and is considered to be a classic in the field. This brings his work to the web. This is a free, online resource.</li>
- <li><a href="http://www.amazon.com/Stop-Stealing-Sheep-Find-Works/dp/0672485435">Stop Stealing Sheep and Find Out How Type Works</a> Easy read. Plainly describes what type is, how to select it, and how to use it to improve the reader's communication.</li>
- <li><a href="http://www.netflix.com/Movie/Helvetica/70076125">Helvetica</a> Watch "Helvetica", a film about the most popular font in the world, streaming on Netflix.</li>
- <li><a href="http://ilovetypography.com/">I Love Typography</a> More content than you could ever want on what makes for good typography.</li>
- <li><a href="http://campaignstops.blogs.nytimes.com/2008/04/02/to-the-letter-born/">To The Letter Born</a> Analysis of the Obama campaign's use of Gotham.</li>
- <li><a href="http://unitinteractive.com/blog/2008/06/26/better-css-font-stacks/">Better CSS Font Stacks</a> Don't be boring. Pick from this list of interesting font stacks with a formulaic reason behind it.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="grids"></a>
- <h2>Grids - Chad Mazzola</h2>
- <div class="left description">
- <p>
- Grid systems in graphic design rose to prominence in the 20th century,
- mainly through the influence of <a href="http://www.designishistory.com/home/swiss/">Swiss design</a>.
- Over the past few years, web designers have rediscovered them as an
- effective tool for structuring content on the web. Now, grid systems
- are in the midst of another evolution, as designers adapt them to
- structure content being served to mobile phones and other new devices.
- This talk will give a quick overview of grid systems and show how
- using them effectively can improve your design work.
- </p>
- <h3>Speaker Bio</h3>
- <p>
- Chad is a web/UI designer at thoughtbot, where he builds sites for a
- variety of clients, many of them young startups in the Boston area.
- He also teaches <a href="http://workshops.thoughtbot.com/">workshops on visual design</a>.
- You can learn more by visiting his <a href="http://hellohappy.org">personal site</a>.
- </p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://gridulator.com/">Gridulator</a> Quickly calculate the size of columns and gutters for a grid of any size.</li>
- <li><a href="http://960.gs/">960 grid system</a> The most popular grid system on the web. A great place to start.</li>
- <li><a href="http://cssgrid.net/">Fluid grid system</a> An example of a responsive grid that adapts to the size of the browser window or device.</li>
- <li><a href="http://www.thegridsystem.org/">The Grid System</a> A great collection of resources for learning more about grids.</li>
- <li><a href="http://www.amazon.com/Systems-Graphic-Systeme-Visuele-Gestaltung/dp/3721201450/">Grid Systems in Graphic Design</a> One of the foundational texts for grid systems in graphic design.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="text-editor"></a>
- <h2>Text Editor - Beth Andres-Beck</h2>
- <div class="left description">
- <p>
- The main raw material of development is plain text. By working in a
- universal format, we gain flexibility to use and interact with a huge
- number of tools from Unix to programming languages to the text editor.
- </p>
- <p>
- It is in the text editor where the developer turns knowledge into work
- using his or her hands. Therefore, it helps to pick one editor and
- become a master in it so you can create at the speed of your thoughts.
- Currently, many developers choose vim, and many designers choose
- Textmate or Coda.
- </p>
- <h3>Speaker Bio</h3>
- <p>
- Beth fell in love with programming when she picked up HTML 14 years
- ago and discovered the phenomenal cosmic power of dynamic electronic
- collages. Plus, she got less glue on the carpet that way. After a
- quick trip to Smith College for a Theater degree and sleep-deprived
- discussions of WikiWikiWeb as performance space, she talked her way
- into a C++ job by coding wildly. She now works as a software engineer
- at BAE Systems.
- </p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://www.pragprog.com/the-pragmatic-programmer">The Pragmatic Programmer</a> Listed again because it's so important. Particularly relevant here are the chapters "The Power of Plain Text", "Power Editing", and "Text Manipulation".</li>
- <li><a href="http://robots.thoughtbot.com/post/166073596/intro-rails-vim">Introduction to using vim for Rails development</a> vim is extremely popular amongst Rails developers.</li>
- <li>Integrating vim into your life <a href="http://robots.thoughtbot.com/post/159806050/thoughtbot-is-filled-with-vim-and-vigor">part one</a> <a href="http://robots.thoughtbot.com/post/159805638/integrating-vim-into-your-life">part two</a> and <a href="http://robots.thoughtbot.com/post/619330025/viiiiiiiiiiiiiiiiiim">part three</a> No matter what machine you're on, you probably already have vim installed. It's free and has decades of history behind it. So, you don't have to download it but you do have to spend time learning it if you want to use it. These posts are a good start.</li>
- <li><a href="http://macromates.com/">Textmate</a> A beautiful editor for the Mac. $53.</li>
- <li><a href="http://www.panic.com/coda/">Coda</a> Another beautiful editor for the Mac. $99.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="unix-shell"></a>
- <h2>Unix Shell - Mike Burns</h2>
- <div class="left description">
- <p>Unix is the underlying operating system of most production web applications. It's been in development for decades. It's generally a good idea to match your development environment with your production environment so we recommend running a unix-like system like Mac OS X or Ubuntu on your laptop.</p>
- <p>You access unix through a shell. Mastering the power of the shell will save you crazy amounts of time over the years. Don't do things manually. Automate them. Use a Unix command. You'll be glad you did.</p>
- <h3>Speaker Bio</h3>
- <p>Mike has been a web developer since before the first bubble burst. He co-founded the <a href="http://bostonandroid.org/">Boston Android</a> hackfests and uses Haskell for fun projects. He works at thoughtbot, where mostly develops Rails apps. He also teaches Rails at <a href="http://workshops.thoughtbot.com/">thoughtbot workshops</a>.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://en.wikipedia.org/wiki/Open_source">Open source</a> Be cool. Share your solutions to common problems.</li>
- <li><a href="http://www.pragprog.com/the-pragmatic-programmer">The Pragmatic Programmer</a> A book that will help you understand the core processes of software development. Take these lessons with you no matter which technologies and frameworks you get into over the years.</li>
- <li><a href="http://www.amazon.com/Learning-UNIX-Operating-System-Fifth/dp/0596002610">Learning the Unix Operating System</a> You'll <strong>really</strong> learn Unix from using it every day and consulting the man (manual) pages, but it's good to read something for an overview.</li>
- <li><a href="http://cm.bell-labs.com/cm/cs/upe/">The Unix Programming Environment</a> Unix is for programming so the creators wrote a guide on how to use unix as a programmer.</li>
- <li><a href="http://www.acm.uiuc.edu/workshops/zsh/">The zsh workshop</a> zsh is a popular Unix shell and this little tutorial does a good job explaining why you might want to use it. As it finishes, however &#8220;Shell holy wars just aren't worth it. Do a little investigation, pick your shell, and make it work for you.&#8221;</li>
- <li><a href="http://robots.thoughtbot.com">GIANT ROBOTS SMASHING INTO OTHER GIANT ROBOTS</a> thoughtbot's blog.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="git"></a>
- <h2>Git - Tom Preston-Werner</h2>
- <div class="left description">
- <p>Always use source code control. It's like a time machine. You can work in parallel universes of your source code, experimenting without fear of losing work. Roll back if something goes wrong.</p>
- <p>Git is an open source source code control system written by Linus Torvalds. It's fast and makes branching really easy.</p>
- <h3>Speaker Bio</h3>
- <p>Tom is a co-founder of <a href="http://github.com">Github</a>, a totally bad-ass service for hosting git repositories. Open source repos are free and the open source community has flocked to Github.</p>
- <p>Previously, Tom created <a href="http://gravatar.com">Gravatar</a>, which he sold to Automattic. His open source projects include <a href="https://github.com/mojombo/chronic">Chronic</a>, a natural language date/time parser written in pure Ruby.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://en.wikipedia.org/wiki/Revision_control">Source code control</a> Understand what it is before understanding git, a particular technology for controlling source code.</li>
- <li><a href="http://gitimmersion.com">Git immersion</a> Learn git by doing it. Follow this amazing tutorial.</li>
- <li><a href="http://whygitisbetterthanx.com/">Why Git is Better than X</a> Cheap local branching, everything is local, git is fast, git is small, the staging area, distributed, any workflow, Github, and easy to learn.</li>
- <li><a href="http://www.alistapart.com/articles/get-started-with-git/">A List Apart: Get Started with Git</a> Great read for designers who are unfamiliar with the command line or version control.</li>
- <li><a href="http://tom.preston-werner.com/">tom.preston-werner.com</a> Tom's blog posts, interviews, talks, and open source projects.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="web-standards"></a>
- <h2>Web Standards - Chris Bowen</h2>
- <div class="left description">
- <p>The Trinity of Web Standards is: HTML for semantically describing content, CSS for visually styling that content, Javascript for adding behavior to the content. This separation of concerns and agreement by browser makers to implement standards allows members of the team to focus on real things. When content needs to be created, it is done in HTML and will be accessible to all users. When the app needs to look good on desktop browsers and mobile devices, designers can create CSS stylesheets targeting each client. When the interface calls for a smooth interaction, Javascript is grabbed from the tool belt to solve the problem.</p>
- <h3>Speaker Bio</h3>
- <p>Chris works at Microsoft to foster developer communities. He has been a software architect and lead developer at many companies. He is an author and holds a Master's in Computer Science from WPI.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://www.zeldman.com/dwws/">Designing with Web Standards</a> Now in its 3rd edition, this is a classic by Jeffrey Zeldman. A must read.</li>
- <li><a href="http://www.w3.org/">World Wide Web Consortium (W3C)</a> The main stnadards body which publishes working drafts and recommendations on web technologies. The official HTML5 and CSS3 spec lives here.</li>
- <li><a href="http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(HTML5)">Comparison of layout engines (HTML)</a> Browsers use layout engines to render HTML. Currently popular engines are Gecko (used by Firefox), Trident (IE), and Webkit (Chrome, Safari). This Wikipedia entry lays out the differences of how each engine renders HTML.</li>
- <li><a href="http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(Cascading_Style_Sheets)">Comparison of layout engines (CSS)</a> Same breakdown as the HTML comparison, but for CSS.</li>
- <li><a href="http://en.wikipedia.org/wiki/JavaScript_engine">Javascript engine</a> The Wikipedia entry on Javascript engines. Browsers have Javascript engines in addition to their layout engines. For example, Chrome uses the excellent <a href="http://code.google.com/apis/v8/">v8</a> Javascript engine.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="web-standards"></a>
- <h2>HTML5 and CSS3 - Matt Hodgson &amp; Mike Manning</h2>
- <div class="left description">
- <p>HTML5 is the latest version of the HTML web standard. HTML code underlies just about every website on the internet. It defines the structure of your content.</p>
- <p>CSS3 is the latest version of the CSS web standard. CSS is the separate concern of presentation style for your content. It is where designers and developers define grids, typography, and color. Perhaps the most important part of the CSS spec is <a href="http://www.w3.org/TR/CSS2/selector.html">CSS selectors</a>. As a designer or developer, you'll need to reference your knowledge of CSS selectors over and over again, not only when writing CSS, but when writing jQuery, and when writing Cucumber tests for your Rails apps.</p>
- <h3>Speaker Bio</h3>
- <p>Matt is the CTO and Mike is lead designer at <a href="http://turningart.com">Turning Art</a>, a Cambridge-based "Netflix for art". Manage a queue of artwork that gets delivered to your home to be hung on your walls for however long you want, then replaced with something else from the large online collection.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://greenhornconnect.com/blog/dan-croak-html5">What is HTML5?</a> A quick intro to what HTML5 is, what it looks like, an argument for what it is ready to use today, and links to the coolest features of HTML5.</li>
- <li><a href="http://diveintohtml5.org/">Dive Into HTML5</a> Free, incredibly detailed online resource. In particular, this should be your go-to spot for learning about and using the new HTML5 form fields in "A Form of Madness."</li>
- <li><a href="http://books.alistapart.com/products/html5-for-web-designers">HTML5 for Web Designers</a> The HTML5 spec is 900 pages and hard to read. HTML5 for Web Designers is 85 pages and fun to read.</li>
- <li><a href="http://books.alistapart.com/products/css3-for-web-designers">CSS3 for Web Designers</a> A guide through advanced selectors, gradients, shadows, rounded corners, and animations from Dan Cederholm, a Bostonian.</li>
- <li><a href="http://hardboiledwebdesign.com/">Hardboiled Web Design</a> Grab the PDF. Excellent, strong opinions about HTML5, CSS3, and web design processes.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="jquery"></a>
- <h2>jQuery - John Resig</h2>
- <div class="left description">
- <p>jQuery is the most popular Javascript library in use today. It makes it easy to develop Ajax applications and interact with the DOM via CSS selectors.</p>
- <h3>Speaker Bio</h3>
- <p>John is the creator of jQuery. He works at Mozilla and is the author of <a href="http://www.amazon.com/exec/obidos/ASIN/1590597273/ref=nosim/jspro-20">Pro Javascript Techniques</a> and <a href="http://jsninja.com/">Secrets of the Javascript Ninja</a>. He holds a degree in Computer Science from Rochester Institute of Technology.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://jquery.com">jQuery</a> The official site contains the API documentation and downloads.</li>
- <li><a href="http://blog.jquery.com/">jQuery blog</a> Go-to source of jQuery news.</li>
- <li><a href="http://javascriptweekly.com/">Javascript Weekly</a> A concise, once–weekly free roundup of JavaScript news and articles. Curated by Peter Cooper.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="jquery-mobile"></a>
- <h2>jQuery Mobile - John Resig</h2>
- <div class="left description">
- <p>jQuery Mobile is a library written on top of jQuery. It makes it easy to develop mobile web applications that work on all popular smartphones and tablets. It is optimized for touch. It uses the lessons learned from jQuery UI to make theming your app simple.</p>
- <p>You can use jQuery Mobile without ever writing a line of Javascript. So, if you only know HTML and CSS, you know how to make a mobile web application. No need to learn Objective-C (iPhone) or Java (Android), pay to join a developer program, and wait for approval into an app store. Distribute your app at will on the most open platform the world's ever seen: the web.</p>
- <h3>Speaker Bio</h3>
- <p>See jQuery section.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://jquerymobile.com/">jQuery Mobile</a> The official site contains the API documentation, demos, and downloads.</li>
- <li><a href="http://warsquaregame.com/">WarSquare</a> A geo-aware game written using jQuery Mobile, built on top of Foursquare and launched within 36 hours of jQuery Mobile's release.</li>
- <li><a href="http://www.readwriteweb.com/mobile/2010/10/adobe-says-people-prefer-mobile-web-not-apps.php">Adobe survey</a> 66% of U.S. consumers favored mobile web apps over native apps for "products &amp; shopping" and "media &amp; entertainment."</li>
- <li><a href="http://www.phonegap.com/">PhoneGap</a> An open source framework for applying native features of mobile devices like GPS, camera, address book, and calendar to your jQuery Mobile app without leaving the HTML/CSS/Javascript paradigm.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="ship-it"></a>
- <h2>Ship It - Ben Scofield</h2>
- <div class="left description">
- <p>The second most important thing you can do is ship something good. The most important thing you can do? Ship something. I love testing and performance optimization and pixel tweaking as much as the next person, but if you never ship then you might as well have never started.</p>
- <h3>Speaker Bio</h3>
- <p>Ben Scofield talks to developers for a living. He's the developer advocate at Heroku, where he works to make sure that the company stays in touch with the Rubyists who develop and deploy to the cloud. He's been shipping code for over a decade, and has the scars to prove it.</p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href="http://pragprog.com/titles/prj/ship-it">Ship It!</a> A nice overview of all the tools and tricks that get you from the start to the goal (which is, of course, shipping); parts are a bit dated now, but the themes are eternal.</li>
- <li><a href="http://vimeo.com/5895898">Quieting the Lizard Brain</a> Godin is a master of shipping; he's written more than a dozen books, blogs every day, has spoken at innumerable events, and makes a mean mole sauce. In this 18-minute video, he entertains on the topic of shipping.</li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <h2>More details coming soon...</h2>
- </section>
- <!--
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="postgresql"></a>
- <h2>PostgreSQL - Jim Psota</h2>
- <div class="left description">
- <p></p>
- <h3>Speaker Bio</h3>
- <p></p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href=""></a> </li>
- <li><a href=""></a> </li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- <section class="talk-wrapper">
- <a name="nosql"></a>
- <h2>NoSQL - Daniel Weinreb</h2>
- <div class="left description">
- <p></p>
- <h3>Speaker Bio</h3>
- <p></p>
- </div>
- <div class="right resources">
- <h3>Learn More</h3>
- <ul>
- <li><a href=""></a> </li>
- <li><a href=""></a> </li>
- </ul>
- </div>
- </section>
- <hr class="alternate"/>
- -->
-</section>
View
69 app/views/talks/index.html.erb
@@ -0,0 +1,69 @@
+<section id="free-event">
+ <h1>What It Is</h1>
+</section>
+<section id="main">
+ <p id="what-it-is">The goal of this event is to act as a welcome wagon for student entering the startup community as developers and designers. The content is driven by what actual startups need right now. Each 10-minute talk is given by a community leader. Further resources on each topic are listed below (this is a constant work in progress: check back often). Startups that are interested in hiring students as interns or full-time employees post-graduation will be available afterwards to chat and hand out information.</p>
+
+ <% @talks.each do |talk| %>
+ <hr class="alternate"/>
+ <section class="talk-wrapper">
+ <a name="<%= talk.slug %>"></a>
+ <h2><%= talk.name %> - <%= talk.speaker_name %></h2>
+ <div class="left abstract bio">
+ <%= simple_format talk.abstract %>
+ <h3>Speaker Bio</h3>
+ <%= simple_format talk.speaker_bio %>
+ </div>
+ <div class="right resources">
+ <h3>Learn More</h3>
+ <ul>
+ <% talk.resources.each do |resource| %>
+ <li><%= link_to resource.name, resource.url %> &#8220;<%= resource.description %>&#8221;</li>
+ <% end %>
+ </ul>
+ </div>
+ </section>
+ <% end %>
+
+ <hr class="alternate"/>
+ <section class="talk-wrapper">
+ <h2>More details coming soon...</h2>
+ </section>
+ <!--
+ <hr class="alternate"/>
+ <section class="talk-wrapper">
+ <a name="postgresql"></a>
+ <h2>PostgreSQL - Jim Psota</h2>
+ <div class="left description">
+ <p></p>
+ <h3>Speaker Bio</h3>
+ <p></p>
+ </div>
+ <div class="right resources">
+ <h3>Learn More</h3>
+ <ul>
+ <li><a href="http://railsonpostgresql.com/">Rails on PostgreSQL</a> </li>
+ <li><a href=""></a> </li>
+ </ul>
+ </div>
+ </section>
+ <hr class="alternate"/>
+ <section class="talk-wrapper">
+ <a name="nosql"></a>
+ <h2>NoSQL - Daniel Weinreb</h2>
+ <div class="left description">
+ <p></p>
+ <h3>Speaker Bio</h3>
+ <p></p>
+ </div>
+ <div class="right resources">
+ <h3>Learn More</h3>
+ <ul>
+ <li><a href=""></a> </li>
+ <li><a href=""></a> </li>
+ </ul>
+ </div>
+ </section>
+ <hr class="alternate"/>
+ -->
+</section>
View
5 config/initializers/monkey_patches.rb
@@ -0,0 +1,5 @@
+ruby_files = Rails.root.join('lib', 'monkey_patches', '*.rb')
+
+Dir.glob(ruby_files).each do |file|
+ require file
+end
View
3 config/routes.rb
@@ -2,4 +2,7 @@
root :to => 'registrations#new'
resources :registrations, :only => [:new, :create]
+ resources :talks, :only => [:index]
+
+ match 'pages/what' => 'talks#index'
end
View
9 db/migrate/20110115235553_add_time_to_talks.rb
@@ -0,0 +1,9 @@
+class AddTimeToTalks < ActiveRecord::Migration
+ def self.up
+ add_column :talks, :time, :time
+ end
+
+ def self.down
+ remove_column :talks, :time
+ end
+end
View
16 features/step_definitions/talk_steps.rb
@@ -0,0 +1,16 @@
+Then /^I should see the following talks:$/ do |table|
+ table.hashes.each do |talk_hash|
+ talk = Talk.find_by_name(talk_hash['name'])
+
+ page.should have_css("a[name='#{talk.slug}']")
+ page.should have_css("h2", :text => "#{talk.name} - #{talk.speaker_name}")
+ page.should have_css(".abstract p", :text => talk.abstract)
+ page.should have_css(".bio p", :text => talk.speaker_bio)
+
+ talk.resources.each do |resource|
+ page.should have_css(".resources li", :text => resource.description)
+ page.should have_css(".resources li a", :text => resource.name)
+ page.should have_css(".resources li a[href='#{resource.url}']")
+ end
+ end
+end
View
2 features/support/paths.rb
@@ -10,6 +10,8 @@ def path_to(page_name)
when /the home\s?page/
'/'
+ when /the what page/
+ '/pages/what'
# Add more mappings here.
when /the sign up page/i
View
20 features/visitor_views_talks.feature
@@ -0,0 +1,20 @@
+Feature: Visitor views talks
+
+ In order to learn more about each talk
+ As a college student
+ I want to see the talk abstract, the speaker bio, and resources
+
+ Scenario: Student views talks
+ Given the following talks exist:
+ | name | speaker name | speaker bio | abstract |
+ | Git | Tom Preston-Werner | Github dude. | Version control is your friend. |
+ | jQuery | John Resig | jQuery dude. | CSS selectors are your friends. |
+ And the following resources exist:
+ | name | url | description | talk |
+ | Github | http://github.com | Bad-ass. | name: Git |
+ | jQuery | http://jquery.com | Bad-ass. | name: jQuery |
+ And I am on the what page
+ Then I should see the following talks:
+ | name |
+ | Git |
+ | jQuery |
View
13 lib/monkey_patches/string.rb
@@ -0,0 +1,13 @@
+class String
+ def remove_mid_word_characters
+ gsub(/'/, '')
+ end
+
+ def replace_non_words_with_spaces
+ gsub(/[\W]/, ' ')
+ end
+
+ def replace_spaces_with_hyphens
+ gsub(/\ +/, '-')
+ end
+end
View
18 spec/factories.rb
@@ -16,3 +16,21 @@
factory.name { 'Heroku' }
factory.description { 'Deploy' }
end
+
+Factory.define :talk do |factory|
+ factory.name { 'Ship It' }
+ factory.speaker_name { 'Ben Scofield' }
+ factory.speaker_bio { 'Developer advocate at Heroku' }
+ factory.abstract do
+ "The second most important thing you can do is ship something good. The most important thing you can do? Ship something."
+ end
+end
+
+Factory.define :resource do |factory|
+ factory.association(:talk)
+ factory.name { 'Quieting the Lizard Brain' }
+ factory.url { 'http://vimeo.com/5895898' }
+ factory.description do
+ "In this 18-minute video, Seth Godin entertains on the topic of shipping."
+ end
+end
View
19 spec/models/talk_spec.rb
@@ -8,3 +8,22 @@
it { should have_many(:resources) }
end
+
+describe Talk, "#slug" do
+ subject { Factory(:talk, :name => "Why Work at a Startup?") }
+
+ it "is a lowercase identifier" do
+ subject.slug.should == "why-work-at-a-startup"
+ end
+end
+
+describe Talk, ".chronological" do
+ before do
+ @one_pm = Factory(:talk, :time => DateTime.new(2011, 2, 5, 13, 0, 0))
+ @ten_am = Factory(:talk, :time => DateTime.new(2011, 2, 5, 10, 0, 0))
+ end
+
+ it "finds all talks, sorted chronologically" do
+ Talk.chronological.should == [@ten_am, @one_pm]
+ end
+end

0 comments on commit 5ab9fba

Please sign in to comment.