(San Francisco Insight Meditation Community) Exploring the dynamism of dharma as we discover the potential for freedom here, in body, heart & mind.
Podcast: Play in new window | Download
(San Francisco Insight Meditation Community) Exploring the dynamism of dharma as we discover the potential for freedom here, in body, heart & mind.
Podcast: Play in new window | Download
(Aloka Earth Room) Reflection & Guided Meditation on Elements
Podcast: Play in new window | Download
(Gaia House) Using our imagination is useful for extending the range of what feels and thereby is possible for us. Yet, we might feel (or imagine) like the teachings and practices we do are to be with reality more directly than via imagination. But, is it that even possible?
Podcast: Play in new window | Download
(Insight Meditation Society – Retreat Center) Dana and Sila as essential in transforming the habits of mind/heart and liberation
Podcast: Play in new window | Download
(The Buddhist Academy Berlin Brandenburg) Description pending; walking instruction at 32:29
Podcast: Play in new window | Download
It has been more than 6 months that I was checking different Ultrabooks specs to find my ideal laptop. I keep comparing different laptops in a variety of form factors, watching YouTube reviews and disassembly films, and going through the pros and cons of many of the laptops which looked promising.
My old laptop is an ASUS X555LNB which was not a top-notch choice, even five years ago. I choose ASUS X555LNB because of a limited budget, limited brand options to choose from and most importantly: Memory.
If you are using your laptop for Internet surfing and day to day tasks – which is the most common use case of laptops – it might happen to you as well; browser tabs keep eating-up memory. If your laptop’s memory is limited, you have to be careful about resources and always keep an eye on “Used Memory” and “Free Memory” to see if you can load one more browser tab or not. Which is really frustrating. Some people use browser extensions to control memory usage but you might hit this limit in other cases like loading Virtual Machines or starting multiple Docker containers.
CPU benchmark is quite common for systems and laptops reviews, but I think for day to day use cases, hitting memory limit wall is much more common than facing CPU limits.
So, when I was looking for a laptop, 5 years ago, I had to choose a budget laptop with at least 8GB memory. I got ASUS X555LNB, replaced Optic drive with an SSD and keep using it for the last five years. It was not perfect; webcam quality was awful; After switching to work from the home routine I end up buying an external USB webcam to be able to attend meetings with the decent video quality. Also, I had to change Caddy because of connector oxidation which was not a laptop issue anyway.
Fast forward to 6 months ago, when I start looking for a new laptop. This time, I had more options to choose and didn’t need to worry about the budget that much. Mostly, I checked Ultrabooks because I believe laptops have to be light and well-designed. Normally, people who need a powerful system and use laptops on the move all the time would look into Ultrabooks. My reasons were different but Ultrabooks are closest laptop form factor to what I was looking/dreaming for.
Even though Ultrabooks look like a perfect match for a lightweight yet powerful laptop, they are not flawless:
I was interested in AMD Ryzen series CPUs not only because of better performance and lower price comparing to Intel contenders but also because I think Intel as a company and maybe x86 as technology are reaching to the end of their lifeline. More about this later.
So I start looking for Ultrabooks with 32GB of memory, Ryzen CPU, decent battery life, acceptable set of ports and sensible price tag. I am a Linux user so Macbook Air was out of the question. Let’s say, I was looking for some Ultrabook with Macbook Air design and quality, which has useful ports and doesn’t need a clunky adapter to connect to almost anything.
Dell XPS is an obvious option but it comes just with Intel CPUs and it is a bit expensive. ASUS ZenBook 14 UM433 is a good choice too but memory is limited to maximum 16GB Onboard RAM with no option to upgrade, no audio jack and no HDMI port. ThinkPad X13 is a perfect pick even though it is not an Ultrabook; AMS Ryzen 7 PRO 4750U processor and a good set of ports. However, its max memory is 16GB as a soldered non-upgradable option. And I am not interested in buying a black-vented-plastic-fruit-box like laptop.
At this point, it was obvious to me that finding an Ultrabook with 32GB of memory is almost impossible. Asus ROG Zephyrus G14 comes with powerful Ryzen 9 4900HS processor and 32GB of memory but it is a gaming laptop, a bit heavy, pretty expensive, with no webcam so it is not an option.
I was about to give up buying a laptop and postpone it to 6 or even 12 months later, hoping that my old laptop would last long enough so I can find my ideal Ultrabook in next laptop generations. When Apple introduced new Macbook Air with ARM-based M1 chip, I released that my favourite laptop might not be AMD powered anymore.
When ARM introduced Cortex-A78C, I was wondering if any laptop manufacturer is going to ship a disruptive product with it and here comes Apple M1. Once again Apple is leading innovation and improvement in the market. Don’t get me wrong. I am not an Apple fanboy. Actually, I am far far away from where Apple approaches the market but this is about technology not marketing. To me, Intel is holding back processor technology with its domination on processor market and this will end soon. AMD and its cheaper Ryzen processor is an interesting competition but not a game-changer. ARM and Apple M1 and maybe Cortex-A78C are totally different though. I am sure laptop manufacturers will follow Apple footsteps one more time and in a few months, new laptop models with different ARM-based processors are going to pup-up here and there.
So I give up looking for the ideal Ultrabook and decided to wait a year or two. But until then, I needed a budget laptop close to what I was looking for. There were noteworthy options like Lenovo IdeaPad S540 13 with AMD Ryzen 7 4800U processor and 16GB of memory but a bit expensive to call a budget laptop.
I start thinking twice about my priorities. Since I was not looking for an ideal laptop anymore, I could be more practical. Honestly, I am not one of those guys who will pull out their laptop and start working if they find 10 minutes of spare time. I am most likely will check some social media or read a book or an article maybe. I need a laptop for my work and I won’t carry it around more than once or twice a week. So I don’t need to trade off ports for lighter and thinner Ultrabook.
While I was researching for ultimate Ultrabook, I found ASUS D509DA. Its processor is AMD Ryzen 7 3700U with Radeon Vega Mobile Gfx and 4GB of soldered memory plus a RAM slot with 8GB of DDR4 memory. It has an acceptable monitor, screen-to-body ratio, webcam and all necessary ports for less than 750 USD (950 AUD). And I had the option to upgrade the memory to 16GB which would be 20GB of memory in total for GPU and CPU. Close enough.
I got my ASUS D509DA-EJ355R last week and boot it with Pop!_OS. Everything worked out of the box, which is really interesting. Other than disabling UEFI to be able to boot to Pop!_OS, I didn’t do any specific tweak to have a fully functional laptop.
There are some drawbacks like missing keyboard back-lit or 2-cell, 32Wh battery. But other than that, ASUS D509DA-EJ355R looks like a great budget laptop which hopefully is going to last long enough for me to find my dream laptop.
Anyone ever worked in IT or ICT industry knows about – or at least heard of – SLAs; Service Level Agreements. A service level agreement is a commitment between a service provider and a client. Particular aspects of the service – quality, availability, responsiveness – are agreed between the service provider and the service user. The user could be either external customer or other internal teams of the same organisation. However, more formal SLAs with penalties are common for customers, internal users need to know what level of service they can expect for any service provided by other teams.
Service provider teams must set clear Service Level Objectives (SLO) to be able to commit to SLAs based on them. An SLO is a target value or range of values for a service level that is measured by a Service Level Indicator (SLI). SLI is a carefully defined quantitative measure of some aspect of the level of service that is provided. Some common examples of SLIs are ‘request latency’, ‘error rate’ and ‘system throughput’.
Setting right SLO might be complicated. While choosing a specific SLI or set of SLIs might be easy, deciding which one or what combination of SLIs might be the best option for the SLO is tricky. Remember that we set SLO to be able to commit to a certain level of service and final judgement here is with the user of the service. No matter how we choose SLIs for the SLO, if the user is not getting what is expected, SLO would be useless. So we need to look at SLOs from user’s point of view.
SLAs are tied to business goals so normally DevOps are not responsible to provide them but since SLOs are needed to provide SLAs and SLOs are based on SLIs which falls under Monitoring and Alerting tasks of DevOps, they normally get involved in helping to avoid triggering the consequences of missed SLOs. They can also help to define the SLIs: there obviously needs to be an objective way to measure the SLOs in the agreement, or disagreements will arise.
But what about internal services? DevOps have to make sure they are setting accurate expectations for internal teams regarding services they provide by defining correct SLOs and by helping other service provider teams to do so as well. After all, they considered Monitoring and Alerting experts unless there is some specialist team for Monitoring and Alerting.
There are different resources about how to choose best SLIs for different SLOs, so I will not go through details of setting SLIs for any specific SLO. Just don’t forget to try to define SLO as close as possible to the user’s perspective.
DevOps definition has been changed from the time it was coined a decade ago. It was defined by the famous clash between Dev teams and Ops teams but these days it seems most Ops teams work in harmony with Dev teams thanks to DevOps culture. It seems that the reason behind naming it DevOps is not that common these days. DevOps, made DevOps name unfit.
Some suggest a different name like Reliability Engineering to opt-out Dev and Ops clash and replace the cause with new definitions like the “Error Budget”. In Google’s SRE book, error budget is one minus the availability target. A service that’s 99.99% available is 0.01% unavailable. That permitted 0.01% unavailability is the service’s error budget. Error budget can resolve Dev and Ops structural conflict cause they can discuss and reach an agreement about how to spend this budget.
There are other changes too; For many companies, Ops definition has been changed during the last few years. Many operational tasks shifted more toward Cloud infra and as a result, part of Ops team daily work offloaded to Cloud infrastructure and service provides. Practising DevOps methods and Software Reliability Engineering (SRE) principles is becoming the daily job of any Ops team which is moving to cloud. In many cases, team names changed to Infrastructure Team or Cloud Services Team or just simply DevOps Team.
So DevOps Culture and SRE mindset are not just some cool ideas to checkout but real concepts that teams need to work with every single day. But what is DevOps culture? How we define SRE mindset? And what has been changed in DevOps practises in the last few years?
I believe the original ingredients of DevOps didn’t change that much; Culture, Automation, Lean, Measurement and Sharing. While all four other pillars are pretty important, they would be useless without culture.
Culture is common or accepted ideas, customs and social behaviour of a particular society and in this case organisation. It acts like the glue which holds everything together. Without DevOps culture, you might have bits and pieces but there are not going to work together.
So let’s go back to the original question; What is DevOps culture anyway?
I believe the keyword to DevOps culture is collaboration. As soon as different teams in the company and each team member inside a team, start collaborating with others, either for improving automation or lean development or suggesting new measurement methods for monitoring and metrics analysis, or sharing ideas, findings and experiences with others, DevOps culture starts showing its effects. Changing service availability approach from avoiding failures to concepts like “Error Budget” can help companies to accelerate DevOps culture.
Culture is about people and DevOps culture needs people to believe in it to work. From each team member to different levels of organisational management.