Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

Free The Enterprise With Ruby & Master Your Own Domain

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Próximo SlideShare
Ninja Git: Save Your Master
Ninja Git: Save Your Master
Cargando en…3
×

Eche un vistazo a continuación

1 de 117 Anuncio

Free The Enterprise With Ruby & Master Your Own Domain

Descargar para leer sin conexión

On the heals of Luis Lavena's RailsConf talk "Infiltrating Ruby Onto The Enterprise Death Star Using Guerilla Tactics" comes a local and frank talk about the current state of Open Source Software (OSS) participation from Windows developers. Learn what OSS is, what motivates its contributors, and how OSS can make you a stronger developer. Be prepared to fall in love with writing software again!

We will start off with a 101 introduction to both the Ruby programming language and the Ruby on Rails web application framework. You will learn about ActiveRecord, a powerful ORM that maps rich objects to your databases, and the latest components to use it with SQL Server. As a Rails core contributor and author of the SQL Server stack, I will give you a modern insight into both that will allow you to leverage your legacy data with Ruby.

Lastly, I will review the bleeding edge tools being actively created for Windows developers to ease the transition to Ruby, Rails and OSS from a POSIX driven world. Many things have changed. It is time to learn and perform some occupational maintenance.

On the heals of Luis Lavena's RailsConf talk "Infiltrating Ruby Onto The Enterprise Death Star Using Guerilla Tactics" comes a local and frank talk about the current state of Open Source Software (OSS) participation from Windows developers. Learn what OSS is, what motivates its contributors, and how OSS can make you a stronger developer. Be prepared to fall in love with writing software again!

We will start off with a 101 introduction to both the Ruby programming language and the Ruby on Rails web application framework. You will learn about ActiveRecord, a powerful ORM that maps rich objects to your databases, and the latest components to use it with SQL Server. As a Rails core contributor and author of the SQL Server stack, I will give you a modern insight into both that will allow you to leverage your legacy data with Ruby.

Lastly, I will review the bleeding edge tools being actively created for Windows developers to ease the transition to Ruby, Rails and OSS from a POSIX driven world. Many things have changed. It is time to learn and perform some occupational maintenance.

Anuncio
Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

Similares a Free The Enterprise With Ruby & Master Your Own Domain (20)

Anuncio

Más reciente (20)

Anuncio

Free The Enterprise With Ruby & Master Your Own Domain

  1. 1. Free The Enterprise With Ruby & Master Your Own Domain Ken Collins metaskills.net
  2. 2. Congratulations! e simple fact that you are sitting here listening to me, means you've made a glorious contribution to Science! Tragic, but informative.
  3. 3. Our Time Together
  4. 4. Our Time Together
  5. 5. Our Time Together
  6. 6. Our Time Together my projects
  7. 7. Our Time Together my projects oss windows
  8. 8. Who Am I Again? ?
  9. 9. Who Am I Again? @MetaSkills
  10. 10. Who Am I Again? @MetaSkills
  11. 11. Who Am I Again? @MetaSkills
  12. 12. Who Am I Again? @MetaSkills
  13. 13. Who Am I Again? @MetaSkills ...
  14. 14. Sr. Soft ware Engineer @ Decisiv
  15. 15. Blog @ MetaSkills.net
  16. 16. Freetime @ HomeMarks.com
  17. 17. Advocate @ 757rb.org
  18. 18. Dan Pink -On The Surprising Science Of Motivation TED Talk http://is.gd/At2iVU RSA Animate http://is.gd/SpuTbN
  19. 19. Autonomy
  20. 20. Mastery
  21. 21. Purpose
  22. 22. Autonomy Mastery Purpose
  23. 23. Great! Sign Me Up.
  24. 24. The Absolute Basics (Github) You (yes, you!) should contribute to open source http://thechangelog.com/post/5367356233/
  25. 25. The Absolute Basics (Github) You (yes, you!) should contribute to open source http://thechangelog.com/post/5367356233/ Forking A Project
  26. 26. The Absolute Basics (Github) You (yes, you!) should contribute to open source http://thechangelog.com/post/5367356233/ Forking A Project Track Upstream Changes
  27. 27. The Absolute Basics (Github) You (yes, you!) should contribute to open source http://thechangelog.com/post/5367356233/ Forking A Project Track Upstream Changes Never Work On Master!
  28. 28. The Absolute Basics (Github) You (yes, you!) should contribute to open source http://thechangelog.com/post/5367356233/ Forking A Project Track Upstream Changes Never Work On Master! Remote Tracking Branches
  29. 29. The Absolute Basics (Github) You (yes, you!) should contribute to open source http://thechangelog.com/post/5367356233/ Forking A Project Track Upstream Changes Never Work On Master! Remote Tracking Branches Pull Requests
  30. 30. OSS For The Tenderfoot
  31. 31. OSS For The Tenderfoot Read The Manual
  32. 32. OSS For The Tenderfoot Read The Manual Look For Support Channels
  33. 33. OSS For The Tenderfoot Read The Manual Look For Support Channels Do Not Assume Critical Bugs
  34. 34. OSS For The Tenderfoot Read The Manual Look For Support Channels Do Not Assume Critical Bugs Include Relevant Information
  35. 35. OSS For The Tenderfoot Read The Manual Look For Support Channels Do Not Assume Critical Bugs Include Relevant Information We Like To Mentor!
  36. 36. my projects
  37. 37. ActionMailer ActionPack ActiveModel ActiveRecord ActiveResource ActiveSupport
  38. 38. ActionMailer ActionPack ActiveModel ActiveRecord ActiveResource ActiveSupport
  39. 39. Powerful Models class User < ActiveRecord::Base end user = User.find(10) user.username # => 'metaskills' user.email # => 'ken@metaskills.net'
  40. 40. Associations class Client < ActiveRecord::Base has_one :address has_many :orders end class Address < ActiveRecord::Base belongs_to :client end class Order < ActiveRecord::Base belongs_to :client end
  41. 41. Validations class Person < ActiveRecord::Base validates_presence_of :name end p = Person.new p.valid? # => false p.errors # => {:name=>["can't be blank"]} p.save # => false p.save! ActiveRecord::RecordInvalid
  42. 42. Dirty Attributes person = Person.find_by_name('Uncle Bob') person.changed? # => false person.name = 'Bob' person.changed? # => true person.name_changed? # => true person.name_was # => 'Uncle Bob' person.name_change # => ['Uncle Bob', 'Bob'] person.name = 'Bill' person.name_change # => ['Uncle Bob', 'Bill'] person.save person.changed? # => false person.name_changed? # => false
  43. 43. Migrations class AddReceiveNewsToUsers < ActiveRecord::Migration def self.up change_table :users do |t| t.boolean :receive_newsletter, :default => false end User.update_all :receive_newsletter => true end def self.down remove_column :users, :receive_newsletter end end
  44. 44. And The List Goes On...
  45. 45. And The List Goes On... Identity Map
  46. 46. And The List Goes On... Identity Map Prepared Statements
  47. 47. And The List Goes On... Identity Map Prepared Statements Etc, etc, etc...
  48. 48. ActiveRecord SQL Server Adapter
  49. 49. SQL Server Adapter
  50. 50. SQL Server Adapter Maintainer For 4 Years
  51. 51. SQL Server Adapter Maintainer For 4 Years Will Talk About 3.1.x
  52. 52. SQL Server Adapter Maintainer For 4 Years Will Talk About 3.1.x Use Rational Version Policy
  53. 53. SQL Server Adapter Maintainer For 4 Years Will Talk About 3.1.x Use Rational Version Policy 2005, 2008, 2011 & Azure
  54. 54. SQL Server Adapter Maintainer For 4 Years Will Talk About 3.1.x Use Rational Version Policy 2005, 2008, 2011 & Azure Includes ARel Visitor
  55. 55. SQL Server Adapter Maintainer For 4 Years Will Talk About 3.1.x Use Rational Version Policy 2005, 2008, 2011 & Azure Includes ARel Visitor DBLIB, ODBC Connection Mode
  56. 56. Key Adapter Features
  57. 57. Key Adapter Features Stored Procedures
  58. 58. Key Adapter Features Stored Procedures Views (Schema Reflection)
  59. 59. Key Adapter Features Stored Procedures Views (Schema Reflection) Different Schemas
  60. 60. Key Adapter Features Stored Procedures Views (Schema Reflection) Different Schemas Auto Reconnects
  61. 61. Key Adapter Features Stored Procedures Views (Schema Reflection) Different Schemas Auto Reconnects SQL Azure
  62. 62. Key Adapter Features Stored Procedures Views (Schema Reflection) Different Schemas Auto Reconnects SQL Azure http://is.gd/UDdVzT
  63. 63. Prepared Statements
  64. 64. Prepared Statements SELECT TOP(1) * FROM [posts] WHERE [id] = 1 SELECT TOP(1) * FROM [posts] WHERE [id] = 2 SELECT TOP(1) * FROM [posts] WHERE [id] = 3
  65. 65. Prepared Statements SELECT TOP(1) * FROM [posts] WHERE [id] = 1 SELECT TOP(1) * FROM [posts] WHERE [id] = 2 SELECT TOP(1) * FROM [posts] WHERE [id] = 3 EXEC sp_executesql N'SELECT TOP(1) * FROM [posts] WHERE [id] = @0', N'@0 int', @0 = 1 EXEC sp_executesql N'SELECT TOP(1) * FROM [posts] WHERE [id] = @0', N'@0 int', @0 = 2 EXEC sp_executesql N'SELECT TOP(1) * FROM [posts] WHERE [id] = @0', N'@0 int', @0 = 3
  66. 66. Prepared Statements http://www.engineyard.com/blog/2011/sql-server-10xs-faster-with-rails-3-1/
  67. 67. TinyTDS Ruby C Extension
  68. 68. TinyTDS
  69. 69. TinyTDS Wraps FreeTDS’s
  70. 70. TinyTDS Wraps FreeTDS’s Uses DBLIB Interface
  71. 71. TinyTDS Wraps FreeTDS’s Uses DBLIB Interface Converts All Data Types To Ruby Primitives
  72. 72. TinyTDS Wraps FreeTDS’s Uses DBLIB Interface Converts All Data Types To Ruby Primitives Proper Encoding Support
  73. 73. TinyTDS Wraps FreeTDS’s Uses DBLIB Interface Converts All Data Types To Ruby Primitives Proper Encoding Support Highly Tested!
  74. 74. TinyTDS Wraps FreeTDS’s Uses DBLIB Interface Converts All Data Types To Ruby Primitives Proper Encoding Support Highly Tested! From 2000 to Azure
  75. 75. Modern SQL Server & Rails http://www.engineyard.com/blog/2011/modern-sql-server-rails/
  76. 76. oss windows
  77. 77. oss windows
  78. 78. Luis Lavena @luislavena Wayne E Seguin @wayneeseguin http://rubyheroes.com/
  79. 79. Rails Installer
  80. 80. Rails Installer
  81. 81. Rails Installer Ruby 1.8.7
  82. 82. Rails Installer Ruby 1.8.7 Git 1.7.3
  83. 83. Rails Installer Ruby 1.8.7 Git 1.7.3 DevKit
  84. 84. Rails Installer Ruby 1.8.7 Git 1.7.3 DevKit Rails 3.0, SQLite3, TinyTDS
  85. 85. Rails Installer Ruby 1.8.7 Git 1.7.3 DevKit Rails 3.0, SQLite3, TinyTDS Beta 2.0 Version
  86. 86. Rails Installer Ruby 1.8.7 Git 1.7.3 DevKit Rails 3.0, SQLite3, TinyTDS Beta 2.0 Version Ruby 1.9 & Rails 3.1
  87. 87. Going Native Rake Compiler https://github.com/luislavena/rake-compiler
  88. 88. Going Native Rake Compiler https://github.com/luislavena/rake-compiler Mimics RubyGems Build Process
  89. 89. Going Native Rake Compiler https://github.com/luislavena/rake-compiler Mimics RubyGems Build Process Build Extensions For Different Ruby Implementations.
  90. 90. Going Native Rake Compiler https://github.com/luislavena/rake-compiler Mimics RubyGems Build Process Build Extensions For Different Ruby Implementations. Build "FAT" Native Gems For Windows Users (from Linux or OSX)
  91. 91. Going Native MiniPortile https://github.com/luislavena/mini_portile
  92. 92. Going Native MiniPortile https://github.com/luislavena/mini_portile A Minimalistic, Simplistic And Stupid Implementation Of A Port/Recipe System.
  93. 93. Going Native MiniPortile https://github.com/luislavena/mini_portile A Minimalistic, Simplistic And Stupid Implementation Of A Port/Recipe System. For Gem Developers!!!
  94. 94. Going Native (TinyTDS)
  95. 95. Going Native (TinyTDS) Git Clone The Project.
  96. 96. Going Native (TinyTDS) Git Clone The Project. $ bundle install && rake
  97. 97. Going Native (TinyTDS) Git Clone The Project. $ bundle install && rake Download libiconv & freetds.
  98. 98. Going Native (TinyTDS) Git Clone The Project. $ bundle install && rake Download libiconv & freetds. Compile Each.
  99. 99. Going Native (TinyTDS) Git Clone The Project. $ bundle install && rake Download libiconv & freetds. Compile Each. Build Ruby Gem C Extension. Statically Linked To Libs.
  100. 100. Going Native (TinyTDS) Git Clone The Project. $ bundle install && rake Download libiconv & freetds. Compile Each. Build Ruby Gem C Extension. Statically Linked To Libs. Run Tests!
  101. 101. AdventureWorks.Ruby
  102. 102. AdventureWorks.Ruby
  103. 103. AdventureWorks.Ruby
  104. 104. AdventureWorks.Ruby
  105. 105. AdventureWorks.Ruby On github.com/rails-sqlserver
  106. 106. AdventureWorks.Ruby On github.com/rails-sqlserver Database Cloning
  107. 107. AdventureWorks.Ruby On github.com/rails-sqlserver Database Cloning Rake Override Task
  108. 108. AdventureWorks.Ruby On github.com/rails-sqlserver Database Cloning Rake Override Task Usage of smocript/sqlcmd

×