This is the first of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.tumblr.com/tagged/Rails-3-beginner-to-builder-2011
This is the 6th of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This is the 5th of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This is the 4th of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This series introduces students to ruby on rails 3 through the book "Agile Web Development with Rails" with accompanying lecture videos found at http://www.thinkbohemian.com/tag/rails-summer-of-code/
Modern Web Technologies — Jerusalem Web Professionals, January 2011Reuven Lerner
What's the current state of Web technologies, and how does it affect professionals creating Web applications? In this talk, I survey the latest trends in Web technologies, and where I believe they're going in the near future.
This is the 6th of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This is the 5th of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This is the 4th of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This series introduces students to ruby on rails 3 through the book "Agile Web Development with Rails" with accompanying lecture videos found at http://www.thinkbohemian.com/tag/rails-summer-of-code/
Modern Web Technologies — Jerusalem Web Professionals, January 2011Reuven Lerner
What's the current state of Web technologies, and how does it affect professionals creating Web applications? In this talk, I survey the latest trends in Web technologies, and where I believe they're going in the near future.
This is the 3rd of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.tumblr.com/tagged/Rails-3-beginner-to-builder-2011
This is the 2nd of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.tumblr.com/tagged/Rails-3-beginner-to-builder-2011
Introduction to Ruby and Introduction to Ruby on Rails basic concepts for beginners. The google presentation is even better in full screen https://docs.google.com/presentation/d/1EE0VuB_PkD2-8j5JNs6CUQHb4J9ToIgC7-IxYTojiS0/pub?start=false&loop=false&delayms=3000#slide=id.p
These are the slides from my talk about the AppScale project at the SBonRails meetup. It covers AppScale as well as Google App Engine and the research projects have come out of it, including Neptune, a Ruby DSL focused on computation-heavy workloads.
an overview of the iWantMyName architecture. A catalyst app powered by a RabbitMQ based backend flavored with a lot of CouchDB and sugar coated with some Redis.
Rails ORM De-mystifying Active Record has_manyBlazing Cloud
Rails' ORM layer, ActiveRecord, is an elegant solution for keeping model code simple and modular (aka DRY). Demystifying the way Ruby-on-Rails uses runtime method generation opens a doorway for understanding and provides a foundation for the other ways Rails uses simple conventions to allow sophisticated, concise functionality in a declarative style.
Here is big mystery that you'll be equipped to understand better after playing with the slides
-> If honeys is an array - and honeys has a method create! - then why does an array object [] not have create!
Hive.first.honeys.class
=> Array
[].create!
=> NoMethodError
Hive.first.honeys.create!
Reuven Lerner's first talk from Open Ruby Day, at Hi-Tech College in Herzliya, Israel, on June 27th 2010. An overview of what makes Rails a powerful framework for Web development -- what attracted Reuven to it, what are the components that most speak to him, and why others should consider Rails for their Web applications.
MongoDB at Sailthru: Scaling and Schema DesignDATAVERSITY
Sailthru provides all your website email delivery needs, ensuring Inbox delivery for transactional and mass mail. Sailthru started out as a MySQL-powered transactional-mail service. Starting in 2009, we migrated to the document-oriented "nosql" database MongoDB. Moving entirely to MongoDB has allowed us to build complex user profiles to power behavioral-targeted mass emails and onsite recommendations. How and why we made the move, and how we use MongoDB today.
This is the 3rd of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.tumblr.com/tagged/Rails-3-beginner-to-builder-2011
This is the 2nd of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.tumblr.com/tagged/Rails-3-beginner-to-builder-2011
Introduction to Ruby and Introduction to Ruby on Rails basic concepts for beginners. The google presentation is even better in full screen https://docs.google.com/presentation/d/1EE0VuB_PkD2-8j5JNs6CUQHb4J9ToIgC7-IxYTojiS0/pub?start=false&loop=false&delayms=3000#slide=id.p
These are the slides from my talk about the AppScale project at the SBonRails meetup. It covers AppScale as well as Google App Engine and the research projects have come out of it, including Neptune, a Ruby DSL focused on computation-heavy workloads.
an overview of the iWantMyName architecture. A catalyst app powered by a RabbitMQ based backend flavored with a lot of CouchDB and sugar coated with some Redis.
Rails ORM De-mystifying Active Record has_manyBlazing Cloud
Rails' ORM layer, ActiveRecord, is an elegant solution for keeping model code simple and modular (aka DRY). Demystifying the way Ruby-on-Rails uses runtime method generation opens a doorway for understanding and provides a foundation for the other ways Rails uses simple conventions to allow sophisticated, concise functionality in a declarative style.
Here is big mystery that you'll be equipped to understand better after playing with the slides
-> If honeys is an array - and honeys has a method create! - then why does an array object [] not have create!
Hive.first.honeys.class
=> Array
[].create!
=> NoMethodError
Hive.first.honeys.create!
Reuven Lerner's first talk from Open Ruby Day, at Hi-Tech College in Herzliya, Israel, on June 27th 2010. An overview of what makes Rails a powerful framework for Web development -- what attracted Reuven to it, what are the components that most speak to him, and why others should consider Rails for their Web applications.
MongoDB at Sailthru: Scaling and Schema DesignDATAVERSITY
Sailthru provides all your website email delivery needs, ensuring Inbox delivery for transactional and mass mail. Sailthru started out as a MySQL-powered transactional-mail service. Starting in 2009, we migrated to the document-oriented "nosql" database MongoDB. Moving entirely to MongoDB has allowed us to build complex user profiles to power behavioral-targeted mass emails and onsite recommendations. How and why we made the move, and how we use MongoDB today.
Wordnik's technical co-founder Tony Tam describes the reason for going NoSQL. During his talk Tony will discuss the selection criteria, testing + evaluation and successful, zero-downtime migration to MongoDB. Additionally details on Wordnik's speed and stability will be covered as well as how NoSQL technologies have changed the way Wordnik scales.
Similar to Rails 3 Beginner to Builder 2011 Week 1 (20)
This is an introduction to relational and non-relational databases and how their performance affects scaling a web application.
This is a recording of a guest Lecture I gave at the University of Texas school of Information.
In this talk I address the technologies and tools Gowalla (gowalla.com) uses including memcache, redis and cassandra.
Find more on my blog:
http://schneems.com
This is the last of 8 presentations given at University of Texas during my Beginner to Builder Rails 3 Class. For more info and the whole series including video presentations at my blog:
http://schneems.com/tagged/Rails-3-beginner-to-builder-2011
This series introduces students to ruby on rails 3 through the book "Agile Web Development with Rails" with accompanying lecture videos found at http://www.thinkbohemian.com/tag/rails-summer-of-code/
This series introduces students to ruby on rails 3 through the book "Agile Web Development with Rails" with accompanying lecture videos found at http://www.thinkbohemian.com/tag/rails-summer-of-code/
This series introduces students to ruby on rails 3 through the book "Agile Web Development with Rails" with accompanying lecture videos found at http://www.thinkbohemian.com/tag/rails-summer-of-code/
Macroeconomics- Movie Location
This will be used as part of your Personal Professional Portfolio once graded.
Objective:
Prepare a presentation or a paper using research, basic comparative analysis, data organization and application of economic information. You will make an informed assessment of an economic climate outside of the United States to accomplish an entertainment industry objective.
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
5. Rails - Week 1
•Workspace
• Version Control - Keep your code safe
• RubyGems - Use other’s code
• Bundler - Manage Dependencies
• RVM - Keep your system clean
• Tests - make sure it works
@Schneems
Friday, June 10, 2011
6. Ruby Versus Rails
• Ruby - Is a programming Language
• Like C# or Python
• Can be used to program just about anything
• Rails - Is a Framework
• Provides common web functionality
• Focus on your app, not on low level details
@Schneems
Friday, June 10, 2011
7. Rails is a Web Framework
• Develop, deploy, and maintain dynamic web apps
• Written using Ruby
• Extremely flexible, expressive, and quick
development time
@Schneems
Friday, June 10, 2011
8. Technologies
• Html - creates a view
• Javascript - makes it interactive
• css - makes it pretty
• Ruby - Makes it a web app
@Schneems
Friday, June 10, 2011
15. Ruby Symbols
•Symbols are lightweight strings
• start with a colon
• immutable
:a, :b or :why_the_lucky_stiff
:why_the_lucky_stiff.class
>> Symbol
@Schneems
Friday, June 10, 2011
16. Ruby Hash
•A hash is a dictionary surrounded by curly
braces.
•Dictionaries match words with their definitions.
my_var = {:sup => "dog", :foo => "bar"}
my_var[:foo]
>> "bar"
{:sup => "dog", :foo => "bar"}.class
>> Hash
@Schneems
Friday, June 10, 2011
17. Ruby Array
•An array is a list surrounded by square
brackets and separated by commas.
array = [ 1, 2, 3, 4 ]
array.first
>> 1
[ 1, 2, 3, 4 ].class
>> Array
@Schneems
Friday, June 10, 2011
19. Ruby Blocks
•Code surrounded by curly braces
2.times { puts "hello"}
>> "hello"
>> "hello"
•Do and end can be used instead
2.times do
puts "hello"
end
>> "hello"
>> "hello"
@Schneems
Friday, June 10, 2011
20. Ruby Blocks
•Can take arguments
• variables surrounded by pipe (|)
2.times do |i|
puts "hello #{i}"
end
>> "hello 0"
>> "hello 1"
@Schneems
Friday, June 10, 2011
21. Rails why or why-not?
• Speed
• developer vs computer
• Opinionated framework
• Quick moving ecosystem
@Schneems
Friday, June 10, 2011
24. Convention over
Configuration
Decrease the number of decisions needed,
gaining simplicity but without losing flexibility.
@Schneems
Friday, June 10, 2011
25. Model-View-Controller
• Isolates “Domain Logic”
• Can I See it?
• View
• Is it Business Logic?
• Controller
• Is it a Reusable Class Logic?
• Model
@Schneems
Friday, June 10, 2011
26. Model-View-Controller
• Generated By Rails
• Grouped by Folders
• Connected “AutoMagically”
• Models
• Views
• Controllers
• Multiple Views Per Controller
@Schneems
Friday, June 10, 2011
27. Database Backed Models
• Store and access massive amounts of
data
• Table
• columns (name, type, modifier)
• rows
Table: Users
@Schneems
Friday, June 10, 2011
28. SQL
• Structured Query Language
• A way to talk to databases
SELECT *
FROM Book
WHERE price > 100.00
ORDER BY title;
@Schneems
Friday, June 10, 2011
29. SQL operations
• insert
• query
• update and delete
• schema creation and modification
@Schneems
Friday, June 10, 2011
30. Object Relational Mapping
• Maps database backend to ruby objects
• ActiveRecord (Rail’s Default ORM)
>> userVariable = User.where(:name => "Bob")
Generates:
SELECT "users".* FROM "users"
WHERE (name = 'bob')
>> userVariable.name
=> Bob
@Schneems
Friday, June 10, 2011
31. Object Relational Mapping
• >> userVariable = User .where(:name => "Bob")
models/user.rb
class User < ActiveRecord::Base
end
the User class inherits from ActiveRecord::Base
@Schneems
Friday, June 10, 2011
32. Object Relational Mapping
• >> userVariable = User. where(:name => "Bob")
where is the method that looks in the database
AutoMagically in the User Table (if you made one)
@Schneems
Friday, June 10, 2011
33. RESTful
REpresentational State Transfer
• The state of the message matters
• Different state = different message
“You Again?” “You Again?”
@Schneems
Friday, June 10, 2011
34. RESTful
REpresentational State Transfer
• Servers don’t care about smiles
• They do care about how you access them
• (HTTP Methods)
• GET
• PUT
• POST
• DELETE
@Schneems
Friday, June 10, 2011
35. RESTful
REpresentational State Transfer
• Rails Maps Actions to HTTP Methods
• GET - index, show, new
• PUT - update
• POST - create
• DELETE - destroy
@Schneems
Friday, June 10, 2011
36. Work Environment
• Version Control - Keep your code safe
• RubyGems - Use other’s code
• Bundler - Manage Dependencies
• RVM - Keep your system clean
• Tests - make sure it works
@Schneems
Friday, June 10, 2011
37. Version Control
• my_last_update_1.rb
• my_realy_last_update_2.rb
• really_the_good_code_last_final_new.rb
@Schneems
Friday, June 10, 2011
38. Version Control
• my_last_update_1.rb
• my_realy_last_update_2.rb
• really_the_good_code_last_final_new.rb
@Schneems
Friday, June 10, 2011
39. Version Control
• my_last_update_1.rb
• my_realy_last_update_2.rb
• really_the_good_code_last_final_new.rb
@Schneems
Friday, June 10, 2011
40. Version Control
• Make note of whats different
• See changes over time
• revert back to known state
• work with a team
@Schneems
Friday, June 10, 2011
41. Version Control
• Git (recommended)
• SVN
• Mecurial
• Perforce
• Many More
@Schneems
Friday, June 10, 2011
42. Github
http://github.com
@Schneems
Friday, June 10, 2011
46. Bundler
• Install
bundle install
• installs all gems listed in gemfile
• very useful managing across systems
@Schneems
Friday, June 10, 2011
47. RVM
• Ruby Version Manager
• Clean Sandbox for each project
rvm use ruby-1.8.7-p302
rvm use ruby-1.9.2-p180
@Schneems
Friday, June 10, 2011
48. RVM
• Use fresh gemset for each project
rvm gemset use gowalla
• Switch projects...switch gemsets
rvm gemset use keytar
@Schneems
Friday, June 10, 2011
49. Testing
• Does your code 6 months ago work?
• What did it do again?
• Manual Versus Programatic
• Save Time in the long road by
progamatic Testing
@Schneems
Friday, June 10, 2011
50. Testing
• Test framework built into Rails
• Swap in other frame works
• Use Continuous Integration (CI)
• All tests green
• When your(neverapp breaks, write a
test for it
web
again)
@Schneems
Friday, June 10, 2011
51. IDE
• Mac: Textmate
• Windows: Notepad ++
• Eclipse & Aptana RadRails
@Schneems
Friday, June 10, 2011
52. Recap
• Rails
• Framework
• Convention over Configuration
• Ruby
• Expressive Scripting language
@Schneems
Friday, June 10, 2011