I like a saying from the LEAN manufacturing culture - "The Process is the Expert" but that comes with a caveat, each and every team member is a Process Engineer!
68 karma · joined March 15, 2016
I like a saying from the LEAN manufacturing culture - "The Process is the Expert" but that comes with a caveat, each and every team member is a Process Engineer!
I think this is why FP is becoming more popular these days but I'm not sure some people get why. The problem with OOP is you take a data set and spread it all over a 'system' of stateful (mutable) objects and wonder why it doesn't/can't all fit back into place when you need it to. OOP looks great on paper and I love the premise but...
With FP you take a data set and pass it through a pipeline of functions that give back the same dataset or you take a part of that data out, work on it and put it straight back. All your state lives in one place, mutable changes are performed at the edges, not internally somewhere in a mass of 'instances'.
I think micro services et al try to alleviate this by spreading the OO system's instances into silos but that just moves the problems elsewhere.
Yes! this has been my experience too, building something from first principles and given some tools and direction to experiment you get the chance, and experience, to really learn. I've been looking for resources like this for building amps but they're either small signal or the whole design. You understand how they work but not where and what to change if you wanted to tinker or build your own.
Even if you do use micro-services you still need a protocol!
For desktop I mainly use C# on Windows but would love to dedicate more time to Smalltalk, a very cool concept and language.
Of course, eating less helps too as you're not storing more energy than you need. It's a balance. As pointed out in other responses, eat less carbs/sugar (no soda or bottled juices!), eat only good fats (non manufactured) and don't eat anything in a packet/can that has numbers in the ingredients. Frozen or canned vegetables are ok if they're 'plain' without sauces etc. Basically, eat real food.
Buy smaller plates. My partner has a uncanny ability to fill up a dinner plate no matter how big so I ask her to give me the smallest dinner plates we have and don't mound them too high :) If I'm still hungry I've found just a regular hand full of peanuts takes away the hunger pangs. This helps between meals too, plenty of water also helps.
The trick is to keep moving (doing).
so something like:
## Marketing
- ##.## Reports (as a timestamped pdf etc)The Zen description of QWAN is more about 'what is Quality' or 'where does quality come from'. Yes, elegance plays a part in the overall structure but without QWAN it would be a pretty average 'object'. For example, the design of the car has an 'elegance' in its design but without the Zen 'Quality' would probably not be put together well and be unreliable and shoddy/buggy but it's still a car built with all the patterns.
Quality comes from the knowledge, experience, effort and undivided attention put in by the craftsperson creating the 'object' at a given point in time. The train analogy from Zen explains this well and it's basically about focus in the moment you are doing something. This produces Quality, nothing else. You could argue that the parts to make up the car example above would give it Quality and fix most of the issues in the final product. This is true but only if every step in it's production, from mining the minerals, design, drafting and manufacture were given with the same focus.
As far as software patterns are concerned I think we have strayed too far from inherent Elegance to strive for some other abstracted Elegance (inherent Elegance takes longer to control/master!). The computer is very simple at its low level core (how it computes at least) but we keep building languages to make it simpler at a much higher level and in the process have made things very In-Elegant in between these levels. We had (and still have) languages that take on the lowest level and abstract it to a higher level very simply, the most obvious being Lisp and Forth but the lack of processing power made them untenable for their time. Both of these languages have the 'Elegance' CA discusses, you have complete freedom in creating the language/s and language features you need, put some Pattern Mining in with some Quality and you really have something!
I think with any chronic illness diet plays a big part as when your system is down the food we eat doesn't get processed as well as we like. That is, if you eat junk/processed foods your body can't deal with the 'artificial' components as well as it can real food (no or little human interference). The side effects of poor food choices for me are lethargy and 'brain fog' along with exacerbating my body pain levels. On these days I no longer fight it and just rest. I recover much better/quicker this way rather than trying to fight through it.
Your illness can consume you at times and this can be quite depressing. Learning and practicing some type of mindful meditation can bring you back to some kind of normal, even just 10 minutes a day can make a big difference and I do notice this if I skip a day or two!
Stay well.
I think a few commenters are missing the point or just skimming over the post. It's not about memorising a 'book' or subject by rote, it's about being able to consume, rearrange and remember the subject in a way that's more suitable to how you remember or think about things. It not only clears your thoughts as you study (allowing you to move through the material quicker) but aids in recollection with better organised note taking. Cheers
I was pondering something very similar to this about 10 minutes before he talked about it only I was thinking about changing perspective for the given task, that is: "what 'mode' do I have to be in to get this done?" in place of 'Y'. His short sentence is much more elegant than what I was trying to think but I think 'mode' also fits just as well.
Basically, I think we get too overwhelmed (emotion) with what we have to do and breaking it down into smaller chucks may not be enough. Breaking it down into modes or specialties might make it less daunting. We can all 'plan', 'study', 'code' or whatever hat you need to wear along the way and wearing them all at once, even on a small task can still be overwhelming.
For example, say I have a new coding project but I'm having trouble organising it into chunks as I'm new to the platform/API. What I can do is say "ok, I need to put my 'study' hat on and learn just an overview of how this all works" (study mode) then go back into 'plan' mode to reorganize tasks into further modes to complete item one ('hello world' app say), rinse and repeat.
Pharo is probably the best placed open source Smalltalk to get into the enterprise dev market and has a promising UI framework under dev at the moment but until this gets sorted out I think it will remain on the sidelines for a while yet.
Simple documentation for standard function definitions is fine but macros definitely need special attention. Some say macros are over-used but I think it's more of a case they're under-documented. Even if the name of the macro gives you a fair idea, documenting how it works and what is generates with examples goes a long way to deciphering them for maintenance. cheers.
I think that's more of a management problem than a language problem. cheers
The point of the article rings true, languages like C/C++ and those based on them do shepherd you into how they work and if you're doing low level programming for drivers etc then they work well, that's their domain (and you wouldn't need half of C++ if it stayed in that arena!). When trying to 'express' or abstract a problem then you have to shoehorn your thoughts into the language.
>> being able to dsl, you have to ask how often is that useful? what happens when 10 dsls are built into a code base and you hire a new person? how hard is it to make sense of everything?
Probably not as hard as trying to decipher swaths of source code in a language that doesn't make it easy to create the DSL's, instead you end up with API's and code that tries to hide the ugliness of being pushed around by the language.
With Lisp you are not so much creating API's or DSL's, you're extending the language to suit the problem, not waiting for the language to catch up. This is freedom!
cheers.
That's the one! Code is data - data is code. While this can be done in other languages, it isn't done without considerable effort or going 'off road' so to speak, macros are Lisp. cheers.
Seriously though, what other languages other than Lisp (all the mainstream ones at least) give you the freedom to change the language and/or create DSL's with the same ease? And you can still do your 'bare metal' in C if you really really need to and bring it in.
Just to be clear, Zen (or any other type of Buddhism) has nothing against modern or old medicine, it's just a way of dealing with the would we live in. Maybe Jobs had his reasons for not liking modern medicine but Zen wasn't one of them I'm pretty sure.
Meditations like TM are designed to self hypnotise or put yourself into a trance like state and therefore forget your worries for a bit (like drinking/drugs et al). This is all 'small mind' work. Buddhist meditation, particularly Zen is more about the 'Big Mind', that is, trying to get 'out of your head' and live in the 'real world'. Zen meditation is the _practice_ of being in the 'now' and not living with delusive thoughts which bring on depression/anxiety. When you get up from your meditation session you should then go on to try and live in this state of concentration/awareness. The more you practice, the better you get. When you work, just work, when you eat, just eat etc. It's only our small mind thoughts about future or past that make our daily tasks seem unbearable.
This is a big topic but basically, while TM may be beneficial to some, charging for it is a scam IMHO.
A few more links to meditate on https://www.forth.com/resources/who-uses-forth/
Whether it's used or not wasn't really my point but it's hard to deny that such a simple syntax so close to the metal is quite amazing and elegant :)