Project development - preparing hell dish together – Oleksii Dashkevych

Ruby Meditation
Ruby MeditationRuby Meditation
PROJECT DEVELOPMENT
preparing hell dish together
Aleksey Dashkevych
RubyDev/Teamlead
Battletag: Jester#2293
Steam: Jesterovskiy
The recipe is averaged, because of many variations.We
take some Ruby code and add Rails magic, Postgresql
on top.Add Docker for viscosity.Then put this on
AWS EBS pan and start frying. It's all roasted until
burning deadlines and generously watered with bugs,
serves to the customer.They start eating. Eat and
whisper:“This is an awesome product!”.At the same
time, he forehead is sweating. Kindly offer to fix bugs,
but we refuse and put them in JIRA. Do I need to talk
about what kind of feedback comes then?Tasks with
such recipes, that double estimated.
ANNOTATION
MYTEAMMATES
ME
REMOTE TEAM LEAD
NOT SO LONG AGO
RubyDev left team
AND LITTLE BIT LATER
JSDev left team
ITSTIMETO START COOKING
MAIN INGREDIENTS
+
HOWTO PREPARE RAILS
gem 'rails'
bundle viz
CUT RAILS!
gems.rb
source 'https://rubygems.org'
# gem 'rails'
BUNDLE_RAILS_VERSION = '~> 5.2.0'.freeze
# Rails
gem 'actionpack', BUNDLE_RAILS_VERSION
gem 'activesupport', BUNDLE_RAILS_VERSION
gem 'railties', BUNDLE_RAILS_VERSION
gem 'sequel'
gem 'sequel-rails'
gem 'sequel_pg', require: 'sequel'
RAILS MAGIC
FORGOTTEN INGREDIENT
+
HOWTO PREPARE REACT
ANSWER IS
BUT WE HAVE
JS JS
OK, BUT WHAT NEXT?
ANOTHERVARIATION
+
WHAT?
WHY WE NEED RAILS?
BECAUSE WE CAN
DB
WEB CMS(ADMIN)
RWR
ONE MORETHING
models gem
models.gemspec
Gem::Specification.new do |spec|
spec.name = 'models'
spec.version = `git describe --abbrev=0 --tags`[1..-1]
spec.summary = 'CMS Models'
spec.description = 'This gem contains models part of CMS Core'
spec.files = Dir.glob('app/models/**/*.rb') - ['app/models/editor.rb']
spec.homepage = ‘https://github.com/foo/bar'
spec.add_runtime_dependency 'sequel'
spec.add_runtime_dependency 'sequel_pg'
spec.add_runtime_dependency 'sequel_postgresql_triggers'
spec.add_runtime_dependency 'yard'
end
PROS AND CONS
✓ Sinatra - lightweight, Rails - heavyweight
✓ Sinatra - high load, Rails - low load
✓ Read-only DB scalability
✓ Without microservices, RPC etc.
- DB migrations can affect both apps
NOT IMPRESSED.
WHERE IS HELL DISH?
Project development - preparing hell dish together – Oleksii Dashkevych
LET’STRY SOMETHING NEW
BENDERTHE BOT
HOWTO COOK RELEASE
1. Create PR from master to production branch
2. TravisCI run tests and build Docker image, then stores image to
DockerHub
3. Using our deploy chatbot, send image to AWS EB ‘next’
environment
4. After successful check on ‘next’ - switch!
5. Yum-yum!
PROS AND CONS
✓ Zero downtime deploy
✓ Check ‘next’ before switching
✓ AWS EB includes load balancing and auto scaling
functions
- DB migration will be on both instances
- AWS EB deploy scripts - pain in the head
BON APPETIT, BRATISHKA!
GG WP!
IS HIRING =)
1 of 33

More Related Content

What's hot(20)

Sails.js Model / ORM introduceSails.js Model / ORM introduce
Sails.js Model / ORM introduce
謝 宗穎72.3K views
Dockerizing BDD : Ruby-Cucumber ExampleDockerizing BDD : Ruby-Cucumber Example
Dockerizing BDD : Ruby-Cucumber Example
Shashikant Jagtap2.8K views
Website building exerciseWebsite building exercise
Website building exercise
meilai521602 views
The Evolution of Airbnb's FrontendThe Evolution of Airbnb's Frontend
The Evolution of Airbnb's Frontend
Spike Brehm378K views
Cooking with ChefCooking with Chef
Cooking with Chef
Ken Robertson3.5K views
Bootstrapping angular js with bower grunt yeomanBootstrapping angular js with bower grunt yeoman
Bootstrapping angular js with bower grunt yeoman
Makarand Bhatambarekar1.1K views
Sails jsSails js
Sails js
Andrey Kolodnitsky1.6K views
ATDD with Behat and Selenium (LDNSE6)ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)
Shashikant Jagtap6.6K views
Iam New And NoteworthyIam New And Noteworthy
Iam New And Noteworthy
Abel Muíño2.7K views
Word press workflows and gulpWord press workflows and gulp
Word press workflows and gulp
Eli McMakin1.1K views
YeomanYeoman
Yeoman
James Cryer6.2K views
006. React - Redux framework006. React - Redux framework
006. React - Redux framework
Binh Quan Duc1.1K views

More from Ruby Meditation(20)

Recently uploaded(20)

[2023] Putting the R! in R&D.pdf[2023] Putting the R! in R&D.pdf
[2023] Putting the R! in R&D.pdf
Eleanor McHugh36 views
CXL at OCPCXL at OCP
CXL at OCP
CXL Forum203 views
Web Dev - 1 PPT.pdfWeb Dev - 1 PPT.pdf
Web Dev - 1 PPT.pdf
gdsczhcet49 views
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
Prity Khastgir IPR Strategic India Patent Attorney Amplify Innovation24 views

Project development - preparing hell dish together – Oleksii Dashkevych