Sergey Dolganov
Evil Martians developer, open-source enthusiast, traveller and drummer.
Contracts help us to manage entropy in our applications. We’ll dive into first attempt to bring Contracts approach to Ruby, why did it fail and how we’ve rehabilitated it with functional techniques and applied properly. Now we’re building our app faster with greater confidence and I’ll share how.
Зачастую люди видят в удаленной работе либо только преимущества, либо одни недостатки. Где же правда?
Have you ever heard about data consistency problems within the multi-service architecture? That problem could be solved using Sagas design pattern. In fact, it’s quite hard to implement. Want to know how? Welcome, on board, young magicians!
Did you ever hesitate about starting to work remotely? Maybe you even failed once? You're not alone! I'll share the way we look at Remote Work and how to start feeling natural with it.
Imagine that you want to build a system which depends on external service, e.g., logistics, payments or notifications service. Those systems have its life-cycle which you have to be in sync with. I’ll share how to treat issues you could face, using the examples of DHL, UPS, Russian Post integrations.
Imagine that you want to build a system which depends on external service, e.g., logistics, payments or notifications service. Those systems have its life-cycle which you have to be in sync with. I’ll share how to treat issues you could face, using the examples of DHL, UPS, Russian Post integrations.
Have you ever heard about data consistency problems within the multi-service architecture? That problem could be solved using Sagas design pattern. In fact, it’s quite hard to implement. Want to know how? Welcome, on board, young magicians! Recording is available: https://youtu.be/Ku-IqG4X3q4
Как применять контрактный подход в современном приложении? Конечно, для работы с API и валидации запросов и ответов. Однако, можно пойти дальше и использовать не только схемы запросов, но и Типы на уровне языка. А если применить еще пару приемов позаимствованных в функциональных языках, можно сделать работу вашего приложения не только надежной, но и прозрачной для отладки.
I'm gonna tell, how I went through a lot of pain while working with many services (Facebook, Zoho, DHL, eBay, GitHub, StackOverflow and more) using HTTP API. Eventually, I've healed my injures using a tool (with Design by Contracts approach under the hood) to handle all that craziness, and I'll share my way to handle instability and irregularities with external dependencies.
Nowadays, unit tests are an essential part of our development process. While we are proud we have 100% test coverage; it does not mean that our code behaves as expected, notably when we deal with external APIs. I'm working on the eBay internal project which mostly built around various API interactions: eBay API, Google Translate API, DHL API and so on. I solve different sophisticated problems based on unexpected API behavior on my daily basis. So I want to introduce a contract-based testing framework that aims to get rid of unexpected behavior of your app. I'll share the tools and approaches that will minimize the risks of being dependent on some external system API.
Story behind one research about what Open-Source quality is and how to measure it.