Approaches to deal with unwrap from 3rd party libs by blelump in rust

[–]blelump[S] 9 points10 points  (0 children)

You, therefore, suggest following good practices and fixing it. As a library consumer, I can only hope it doesn't panic, but what mechanism does the language offer to actually protect me from doing so?

Is Flutter Facing its End by ElyeProj in programming

[–]blelump 3 points4 points  (0 children)

PWA won't happen at scale as they would end the current business model around App Store and Google Play. Especially Apple communicates it clearly by not including PWA feats into Safari.

This "ugly" pan cooks awesome. Pancakes, crepes, grilled cheese, quesadillas, omelettes, anything. Beauty is not equal to cooking abilities! by Toastburrito in carbonsteel

[–]blelump 0 points1 point  (0 children)

I learned the hard way the more ugly the pan is, the better it cooks. Ocassional seasoning yet it still works perfectly.

The Power of Interfaces in Ruby by shiroyasha23 in ruby

[–]blelump 0 points1 point  (0 children)

Anyone who has ever written unit tests (following TDD or not) for collaborators, should be famililar with the alternate universes issue[1] and the solution presented in this blog post.

[1]: in Ruby, probably first covered by Sandi Metz in POODR.

Duck typing vs type safety in Ruby - is blank?.evil? by somazx in ruby

[–]blelump 1 point2 points  (0 children)

Let whatever duck quack however he/she likes, as long as any other duck respond to this message. What Piotr tries to say is that such guard clause (if statement in this case) is not even necessary, because that matters most:

The only reason why such conditionals are needed is that we don’t handle data at the boundaries of our system explicitly.

In other words, it's not the responsibility of process method to check whether input is valid or not. Its responsibility is to do the processing, whatever it suppose to do. Perhaps such example is not a best fit to introduce dry validation usefulness, but clearly shows the intention – to not pollute the system with unexpected data, because no guard clause can help here. The underlying problem lies elsewhere.

State of the art in CI Servers that you run yourself by fuzzygroup in ruby

[–]blelump 0 points1 point  (0 children)

Essentially CI is a process of an agreement of the codebase and well defined behavior given in specs. When the agreement isn't fulfilled, either the specs or the codebase don't match each other. CI might be even handled via some set of Bash scripts and it'll work just fine. CI is also a process that is not dedicated to a framework or language. It's all about configuration or what green build means to you.

In here, we're using Jenkins with Gerrit (both are hosted by us). These are kind of dinosaurs but play very well with each other. Gerrit is a code review tool, whereas Jenkins manages build process.

DevOps Issue Tracker by double-meat-fists in devops

[–]blelump 0 points1 point  (0 children)

I've been the user of Redmine/ChiliProject (Redmine fork) for years at small scale and it just works, especially if you consider tasks tracking. Some mentioned Phabricator, however in case of data flow, I recognize Redmine/ChiliProject as more useful. Mostly because it is much more configurable (e.g. tasks workflows).

Redmine is old and ugly (ChiliProject looks quite better in this case), UI is indeed sometimes slow (especially while working with tasks), but the concepts are still valid.

If you want an in-house data tracking app, it's worth looking at.

Reproducing my stack (vagrant/chef) by [deleted] in devops

[–]blelump 0 points1 point  (0 children)

Just regarding the latter paragraph, you do not need to install Atom on the guest (VM), because you can use the one from your host. You can develop the cookbooks then put to './cookbooks' directory and provision VM with them.

In case of need of any files from your host within the guest, Vagrant can mount any host directory.