[HN Gopher] What I'm Up to Now
___________________________________________________________________
What I'm Up to Now
Author : BerislavLopac
Score : 135 points
Date : 2021-08-27 08:15 UTC (2 days ago)
(HTM) web link (martinfowler.com)
(TXT) w3m dump (martinfowler.com)
| gighjifews wrote:
| Somewhat flippant, but also a serious question - do people like
| Martin Fowler and uncle bob actually do anything or do they just
| describe systems that do not (and probably will never) actually
| exist? Have they built real world software, or do they just
| describe some ideal state that has never actually occurred in
| reality - some kind of geek porn?
|
| I'd much rather listen to people who have actually done things
| than people who have theoretical done things (people who do both
| are best).
|
| I ask because I thought Rob Pike was one of those people until I
| found out what he does / has done.
| user3939382 wrote:
| https://en.wikipedia.org/wiki/Martin_Fowler_(software_engine...
| m0zg wrote:
| So I guess the answer is "no", then? :-)
| denvercoder904 wrote:
| Does he have a public github repo? I would love to see some of
| the code that he writes or projects that he has worked on.
| galkk wrote:
| about half of "Patterns of Enterprise Applications" reads like
| introduction/documentation to Hibernate (java's object-relation
| mapper), also you can see traces of earlier ASP.Net there.
|
| I don't know what was first, but this certainly describes
| frameworks that actually exist.
| mack1001 wrote:
| Probably not necessarily on topic - but I really want to give a
| shout out to Mr. Fowler. It's really hard to find anyone in
| contemporary and practical software engineering who has been as
| impactful as he has been. A lot of modern concepts that improve
| software development has a seminal article authored or made
| visible by him.
| ChrisMarshallNY wrote:
| I like _The Agile Manifesto_. I feel that the jury is still out,
| on how effective it is, in practice; not because it 's bad, but
| because I think it has problems in application, in the regular
| schlub world.
|
| Note that I like the Manifesto, but have been underwhelmed by
| what I've seen, in its expression. I feel that Mr. Fowler, and
| his compatriots came out with a great "vision statement," that
| may not be applied particularly well.
|
| Maybe work on "paving the bare spots"[0] on the Manifesto might
| be useful. I really want to see it work. I know that when I
| designed a fairly major infrastructure system, it took ten years,
| before it was really good enough for worldwide consumption (that
| might be a bit of an overstatement, but it took at least eight).
| The software, and the accompanying "vision," were ready by
| Version 2.0 (about 18 months in), but it took all that additional
| time to figure out how to get skeptical and stubborn people to
| accept it, win over friends, and make some embarrassing mistakes.
|
| One of the big issues with coming up with "A New Way(tm)," is
| that it usually means that "the way we've always done it" is
| implied to be wrong, and that's a real hard sell. I know that it
| was the biggest issue that I faced, and dealing with that was
| tricky. In some cases, I needed to make adjustments, and walk
| back my rhetoric, to avoid causing people to get their hackles
| up. That kind of thing is _very_ important, and often neglected.
|
| I've always wished the Manifesto folks had followed through with
| the shepherding process. If his experience is anything like mine,
| it will be a long, frustrating, but ultimately, incredibly
| rewarding endeavor.
|
| [0] https://littlegreenviper.com/miscellany/the-road-most-
| travel...
| dasil003 wrote:
| This resonates a lot, I like this idea of a "shepherding
| process" and digger deeper into what it takes to make big
| projects successful over time.
|
| That said, I think distilling down this hard-won experience
| tends to lead to cargo-culting. Just look at "Agile" itself and
| how it's been embraced and then twisted by consultants into the
| exact opposite of what was intended by _The Agile Manifesto_ to
| begin with. This stuff sells because people want clarity of
| what to do on a daily basis, they don 't want to confront the
| reality that is no guaranteed path to make large scale software
| successful. Certainly some process and structure are helpful as
| long as they are specific to the problem at hand, and focused
| on the needs of the people actually doing the solving and
| giving them whatever air cover and cross-pollination needed for
| them to get the reps on the actual software.
|
| Typically these types of projects happen in large orgs where
| there are incentives for middle management to avoid culpability
| for failure rather than to do what it takes to succeed
| (especially if it's a hard problem). In this kind of
| environment, process is often used as a cudgel for one group to
| protect itself by claiming "I did my job".
|
| So to your question: how effective is _The Agile Manifesto_ in
| practice? I think of it sort of in the necessary-but-not-
| sufficient bucket. Basically if you have buy-in to give a team
| this flexibility and autonomy you have a crack at solving a
| hard problem. Now it depends on the team and the problem: is
| the problem ultimately solvable and does this team have the
| chops?
| ChrisMarshallNY wrote:
| _> how effective is The Agile Manifesto in practice?_
|
| That's the rub. I feel as if it works extremely well, in my
| own work, but I currently work mostly alone (I am part of a
| loosely-coupled team, but I completely "own" my own part of
| the project).
|
| Getting it to work for a team, is not so easy.
|
| Organizations run on Process (note the capital "P"). I feel
| as if _true_ Agile is something that we need to personally
| inculcate into our own lives, as Practice, Habit and
| Understanding. We need to be constantly working within our
| methodology, which, in my case, is equal parts Habit, and
| Experience. I don 't think it's something that can be taught.
| It needs to be _learned_. The reason that I separate these
| two words that seem to mean the same thing, is that
| "teaching," is an outward-facing practice, while "learning"
| is an inward-facing one. I feel that we must -each and every
| one of us- make the effort to _learn_ how to code as a
| _craft_. It starts within each of us, and that 's not
| something that can be foisted upon anyone, or dictated with
| process. We also need to _completely understand_ our craft,
| and the work we do. It should not be simple rote. Habit and
| rote are two different things.
|
| There's no "buzzwordy" or consultant-ready answer to that.
|
| TL;DR: It's complicated.
| itwy wrote:
| Fowler is the master of overcomplicating things.
| dang wrote:
| No personal attacks on HN, please.
| itwy wrote:
| I don't see it that way. He chose to be the brand.
| diskzero wrote:
| Fowler states: _I've long known that when you're doing very
| creative work, such as writing or programming, the useful hours
| you can do in a day is rather less than the accepted industrial
| eight._
|
| I don't want to disagree with him as this is quite subjective,
| but when I am totally engrossed in solving a problem, I get into
| a flow and the time flies by. If the problem is both interesting
| and challenging, I can't wait to get back to working on it and I
| hate having to stop!
|
| I do agree if the work is joyless and the product is tedious, one
| hour spent on it can certainly seem like eight.
| sureglymop wrote:
| I agree but the thing is that not every day in the week will be
| like that. So if you have this "hyperfocus" for two days a
| weeks and on the other days you don't do that much work it
| might average out to pretty much what he's describing.
| webmaven wrote:
| _> [W]hen I am totally engrossed in solving a problem, I get
| into a flow and the time flies by. If the problem is both
| interesting and challenging, I can 't wait to get back to
| working on it and I hate having to stop!_
|
| I agree that it is possible to remain in a state of flow for
| "the standard industrial eight", but on occasions where I've
| remained in a state of flow for eight (or more) hours, the
| quality of the work suffers, and the following day is a total
| loss (as in "me no think good, think meat broken"), so it is
| better to keep to a more sustainable pace.
| hhmc wrote:
| > and the following day is a total loss (as in "me no think
| good, think meat broken")
|
| I've certainly experienced this also. I'm curious if there's
| a neurological explanation?
| [deleted]
| bryanrasmussen wrote:
| I tend not to have flow in programming for more than 3 or 4
| hours. In writing my experience is that you can have flow for
| days but at some point it starts to peter out and then you
| grind to a halt, and because you have been running on flow for
| such a long time it is difficult to force yourself to just
| write, because you hope to get the flow back, so then you spend
| a few days doing nothing but a paragraph or two until you
| realize you have to do the work and the flow is just not coming
| back by itself.
| orzig wrote:
| We talk about this a lot on HN, and I'm curious: Are there good
| studies on this stuff /in the programming context/? I'm aware
| of the work with athletes and musicians (an excellent start,
| but requires a lot of generalization to corporate knowledge
| work).
|
| Even better, given that people are going to vary by at least as
| much as we vary in physical stamina, advice about how to learn
| what my own limits are, given that it's so hard to introspect?
| tcldr wrote:
| I can only speak for myself, but I find the quality of output
| decreases pretty steeply after around six hours of flow.
| Determination can keep me going but I've learnt that it's
| probably more efficient to just rest and return to it after a
| good night's sleep.
| diskzero wrote:
| You have learned a good skill, which is knowing how and when
| to stop. That is something I have a very, very hard time
| with.
| jlg23 wrote:
| That you can be "engrossed in solving a problem" is a luxury.
| One that I enjoyed when I was responsible only to myself. Once
| my wife and daughter entered my life, it was gone. And even
| before, from time to time, I had to make space for other
| obligations that came before my interest/work.
|
| The problems to solve still interest me, but changing diapers
| or getting something from the supermarket for my daugher before
| it closes has become important enough that may they to
| "disrupt"[1] my life anytime.
|
| [1] in quotes, because I would not want to live without these
| "disruptions" anymore. The accomplishment of calming my baby
| daughter in a few seconds dwarves any of the hacks people still
| know me for.
| diskzero wrote:
| That is a good observation. I am the primary care-giver for a
| sick spouse, so I have also seen the luxury of time spent on
| programming diminish.
|
| I am glad you pointed this out. Now that I am older, and
| perhaps wiser, I can look back at some of the unhealthy
| attitudes that I had about co-workers who had to balance the
| much more important demands of life against completing a
| certain feature or getting a demo ready by a certain date.
|
| When I look at my younger self, I can see how this attitude
| can lead to ageism and the lack of respect and support some
| employees see in organizations that only value how much code
| you can crank out.
| alisonkisk wrote:
| That means your other life commitments compete with your
| engineering goals, but it doesn't mean that you are doing
| better engineering because of it. ("Having it all" is a
| myth.)
| HighlandSpring wrote:
| In my experience if I'm in flow for 14 hours and time flies
| it's because I'm doing a high-value refactor at roughly the
| right time (not premature)
|
| If I'm doing a more open ended problem like modelling something
| from scratch (I have boxes and arrows on a piece of paper but
| the edge cases are still a mystery) then it's something I'll
| exhaust myself on much sooner
| recursivedoubts wrote:
| Martin, if you are reading this, here's something you could do:
|
| Revisit REST (and the Richardson Maturity Model[1]) and explain
| _why_ REST has failed so spectacularly in the JSON API world.
|
| It's worth doing because REST-ful hypermedia systems are using an
| interesting and distinctive network model, and most younger web
| engineers don't know much about it and end up using the client-
| server approaches that have become so common for modern web
| applications.
|
| You are in a great (perhaps the best) position to respark
| interest in hypermedia and the REST-ful approach.
|
| I have some thoughts on the matter[2][3][4], and would be happy
| to discuss.
|
| --
|
| [1] -
| https://www.martinfowler.com/articles/richardsonMaturityMode...
|
| [2] - https://intercoolerjs.org/2016/01/18/rescuing-rest.html
|
| [3] - https://intercoolerjs.org/2016/05/08/hatoeas-is-for-
| humans.h...
|
| [4] - https://htmx.org/essays/hypermedia-apis-vs-data-apis/
| vlunkr wrote:
| > explain why REST has failed so spectacularly in the JSON API
| world
|
| Could you elaborate on this?
| [deleted]
| thehappypm wrote:
| By failed, I think they mean "spectacularly wide usage, with
| some drawbacks".
| plorkyeran wrote:
| REST as Fowler advocated for is used approximately nowhere.
| The widely used thing known as REST is very unlike it.
| Andys wrote:
| I wonder about this too. I regularly read that REST is
| bad/failed. But it appears to have had been widely adopted in
| a soft way, beating any competing ideas.
| alisonkisk wrote:
| REST is a model for CRUD, but modern apps have far more complex
| interactions with server data.
| s1k3s wrote:
| Probably not necessarily on topic - but I really want to say that
| this guy has been the #1 source of pain in my developer career so
| far. There've been so many projects where I had to implement some
| solution some way because the "architect" said "that's how Fowler
| recommends it, so that's how we're doing it", even if the
| solution was so bad that everyone saw it coming back to bite us
| from miles away. I read his books and found nothing impressive.
| To me the guy is just a glorified salesman who I'd hire to sell
| BS to my agency's clients.
| shaicoleman wrote:
| Fowler's article that made the most impact on me is the one
| about Monolith First, and how you shouldn't start with a
| complex distributed architecture, even if you're confident
| you'll need it in the future.
|
| https://martinfowler.com/bliki/MonolithFirst.html
|
| Fowler shares ideas of architecture, but in a nuanced way, and
| clearly states when it might be appropriate, and what are the
| costs and complexities involved.
|
| The problem in your case seems to be more of "Architecture
| Astronauts"
|
| https://www.joelonsoftware.com/2001/04/21/dont-let-architect...
| amw-zero wrote:
| As is always the case, I feel the exact opposite. The #1 source
| of pain in my career is people not understanding that certain
| concepts / principles are really the key to surviving in a
| complex system.
|
| But, we probably don't build the same kinds of software.
| Shooting him down because he isn't talking about the kind of
| software you build is pretty ignorant.
| ncann wrote:
| I echo this sentiment. For some reason his writing is very
| popular among so-called "software architect", which is
| especially painful if they are in a position of power in the
| organization and start forcing it down everyone's throat.
| benhoyt wrote:
| I sympathize (I like saying I don't do BDD, Buzzword-Driven
| Development), but I'm not terribly up on Fowler's work -- can
| you provide some concrete examples of things he recommends that
| were over-engineered or just plain bad for your use cases?
| conradfr wrote:
| Yes, I must say, him and Eric Evans. It's not their fault, but
| still ;)
|
| I remember it well, starting 2016 suddenly everyone wants to do
| DDD, CQRS etc. Let's shoehorn new paradigms in our framework of
| choice. Boilerplate, lots of boilerplate...
| The_Colonel wrote:
| You suffer from bad architects. If there wasn't Fowler, they
| would just misinterpret somebody else.
|
| > that's how Fowler recommends it, so that's how we're doing it
|
| Fowler would be the first to point out that there are no hard &
| fast rules / recommendations and each case should be evaluated
| individually since there's just too many variables.
| tommica wrote:
| Well, he is not your source of pain, it's your superiors that
| made the decisions - he did not tell them to do it
| thrower123 wrote:
| Everybody reads Fowler and does horrible things thereafter for
| a while. Hopefully, you come out of that phase and learn what
| is worth bothering with and what is not, without too many years
| and without too many scars and too many failed projects.
|
| Some never do though...
|
| The phase of my career where I drank the SOLID kool-aid and
| studied and tried to apply the hip architectural patterns is
| one of the darkest and most regrettable. I'm still dealing with
| bad decisions made in code bases from that period.
| andrekandre wrote:
| > The phase of my career where I drank the SOLID kool-aid and
| studied and tried to apply the hip architectural patterns is
| one of the darkest and most regrettable. I'm still dealing
| with bad decisions made in code bases from that period.
|
| does this come from the architectural patterns themselves, or
| from applying them everywhere (including where they dont
| fit)?
|
| or maybe something else?
|
| (i have my own experiences, but im really keen to hear from
| others)
| seibelj wrote:
| Martin Fowler has been a big advocate of micro services. I think
| micro services has been one of the biggest mistakes ever
| promulgated on software development and is responsible for
| developer misery, un-productivity, failed projects, and
| unintelligible rats nests that have set back a generation of
| engineers who have to now unlearn all of this nonsense. I can't
| take him seriously and he is forever tainted in my mind. However
| it is a big boon for consultants like him and those that like to
| spend a lot of time gluing unmaintainable services together.
| pbourke wrote:
| Fowler also wrote about "cookie-cutter" scaling of monolithic
| applications. Seems to me that the fault lies with the people
| who cargo cult approaches rather than reflecting on them and
| adopting them if and when they make sense.
| javaunsafe2019 wrote:
| Maybe you and them just did not understand that it's an pattern
| that, as all pattern, makes only sense for certain
| applications.
|
| Maybe you could also present some references that back up your
| claims?
|
| It's always easy to judge on people that tried to solve
| problems of the past. Mistakes will always be made but this way
| we do learn and make progress.
|
| So what I try to say is maybe appreciate that he at least tried
| to solve problems. All this shitposts here at hn against ppl
| like him or uncle bob or so unreflected and immature... like
| really what the heck is going on with you people.
|
| Edit: grammar. Non nativ here...
| wtactual wrote:
| Fowler and "Uncle Bob" are in different solar systems. Fowler
| may get things wrong, but he's not a total hack like Bob.
| "The Clean Coder" is one of the most disgusting things I've
| ever read.
|
| Flagged for accuracy.
| CozyBearNotSoy wrote:
| What specifically did you dislike about The Clean Coder? I
| don't consider myself sufficiently experienced to judge the
| advice given in that book.
| conta_opin_99 wrote:
| If you build your whole life around didactic speaking gigs
| where you tell everyone how to do it despite apparently not
| writing any software yourself, you need to be prepared to be
| open to some criticism when it turns out your ideas are shit.
| javaunsafe2019 wrote:
| True but then please try to back up your hard claims with
| some references. Fowler himself made the restrictions of
| the microservice pattern very clear in several posts...
|
| So don't blame him for stupid architectural design
| decisions!
| exceptione wrote:
| Can you link to any resource? What I read from Fowler is that
| he has lots of reservations about it.
|
| To quote:
|
| _Any architectural style has trade-offs: strengths and
| weaknesses that we must evaluate according to the context that
| it 's used. This is certainly the case with microservices.
| While it's a useful architecture - many, indeed most,
| situations would do better with a monolith._[1]
|
| He even states that you never should start building your
| application as microservices, but instead as a monolith.
|
| _So my primary guideline would be don 't even consider
| microservices unless you have a system that's too complex to
| manage as a monolith. The majority of software systems should
| be built as a single monolithic application. Do pay attention
| to good modularity within that monolith, but don't try to
| separate it into separate services._[2]
|
| __
|
| 1. https://martinfowler.com/articles/microservice-trade-
| offs.ht...
|
| 2. https://martinfowler.com/bliki/MicroservicePremium.html
| jnwatson wrote:
| Microservices are the simplest solution to counteract Conway's
| law.
|
| If you have two organizations writing software, the least-
| overhead organizational approach that allows minimum
| communication overhead and release coordination is for both of
| those organizations to release a package and have well-defined
| APIs between those.
|
| There are certainly other approaches to achieve similar
| outcomes, but microservices are the lowest-tech mechanism.
| Jare wrote:
| > least-overhead
|
| > well-defined APIs
|
| That's where most shifts to microservices fail, right?
| Sometimes because they don't define their APIs well,
| sometimes because the breakdown into packages/services is
| broken (for example: defined by company structure instead of
| sane software architecture), sometimes because the evolution
| of each package's features and functionality is at odds with
| the stability of their API's semantics and guarantees (and
| documentation), sometimes because the development overhead of
| communicating between APIs is too high (debugging for
| example)...
| orzig wrote:
| Maybe it's the right pattern for some problems, and got
| overused when it was high on the hype curve? I don't have a
| horse in the race, but have seen many other
| technologies/patterns go that route
| seibelj wrote:
| I find it particularly stupid compared to most other hyped
| technologies, as the pattern pervades the entire engineering
| superstructure and has to be entirely burned down in order to
| fix the core rot. The foundation of any microservice-based
| system is inherently shoddy in a way other poorly designed
| systems aren't.
| nix23 wrote:
| The Problem With Microservices:
|
| https://www.youtube.com/watch?v=zzMLg3Ys5vI
| staticassertion wrote:
| Your posts have no value. You've said nothing of substance,
| made no valid criticism. If you just want to vent go talk
| to a therapist, don't waste precious bytes.
| nitrogen wrote:
| _If you just want to vent go talk to a therapist, don 't
| waste precious bytes._
|
| Nobody holds comments they agree with to this high of a
| bar. You are being way too harsh, and this borders on
| personal attack.
|
| One of the ways modern society is breaking down is that
| nobody has a community they can vent to and relate to.
| Everything is somebody else's problem. If someone has
| something to say, let them say it. If they didn't say it
| clearly, maybe ask for more. Don't make it personal, and
| if it's irrelevant, just downvote and move on.
| staticassertion wrote:
| All they're doing is repeatedly insulting this guy with
| absolutely no meaningful content across multiple posts.
| It's garbage, it's nothing but unsubstantiated attacks. I
| don't see how my post was a personal attack either, I
| said to vent elsewhere, in an appropriate venue.
| seibelj wrote:
| The value of my post is that a charlatan with very
| damaging views has somehow been promoted as great thinker
| when I find his entire engineering philosophy not only
| incorrect but totally moronic and damaging. I'm calling
| it out because it's really stupid and we need more people
| to feel OK calling bullshit when some idiot carts out the
| "we need 50 services to power the authentication
| pipeline!" which I have seen multiple times during my
| career, as other enthusiastic engineers cheer them on.
| It's a dead idea and it is pointless, at least at when
| operating at the scale of 99% of tech companies. I'm not
| going to keep pretending this is a good idea when it's
| not.
| teh_klev wrote:
| > some idiot carts out the "we need 50 services to power
| the authentication pipeline!"
|
| That's not Fowler's fault. It's the fault of your
| solution architects who don't know how and when to use
| the right amount of seasoning in the sauce.
| detaro wrote:
| > _we need 50 services to power the authentication
| pipeline!_
|
| _If_ the architect is an adherent of Fowler, you can
| then ask where to get the 50-400 engineers needed for
| building said pipeline, citing Fowler for teamsizes. ;)
| api wrote:
| That statement describes basically every fad in development,
| every design pattern, and most if not all tools.
| nitrogen wrote:
| Indeed. It seems that it's useful to have _descriptive_
| patterns to understand what people are already doing. But
| then the hype cycle kicks in, and people treat them as
| _prescriptive_ patterns. MVC, Agile, Design Patterns,
| monoliths, microservices, trunk-based, spaces vs tabs,
| Emacs vs Vim...
| dvaun wrote:
| Near the end of his post, he writes:
|
| > I've always been nagged by my conviction that I'm not working
| as diligently or effectively as I ought to be. Sadly I'm not
| getting any better at not letting that bug me.
|
| Maybe this has been discussed in depth elsewhere, but my question
| in response to this is: how does one/how do we end up feeling
| like this? And how can you work toward not feeling this way?
| dgellow wrote:
| My personal issue was undiagnosed adult ADHD. Learning about it
| and adjusting my life around that fact has been immensely
| useful so far. Though I'm far from being done with that process
| (and likely to never be done...).
| sillysaurusx wrote:
| The feeling never really goes away. For me at least.
|
| I just accidentally raised $1,931 yesterday for Tensorfork
| Labs, a non-profit I started ... also yesterday.
| https://twitter.com/theshawwn/status/1431462744906141696
|
| I was blown away that everyone suddenly offered so much
| support. We have people filling out notion docs
| (http://wiki.tensorfork.com/) and an active Google Chat
| chatroom with 12 interesting people in it. And to top it all
| off, Nat Friedman (Github CEO) DM'ed me last night and I'll be
| talking to him in approximately three hours.
|
| You'd think I'd feel thrilled and like I'm extremely effective.
| I am thrilled, but all I feel is that I haven't done as much as
| I could. Talking and walking are two different things, and now
| that we've talked, it's time to walk the walk. But the truth
| is, I felt guilty sleeping most of today while everyone else
| has been talking excitedly. I felt that if I pushed myself a
| little harder, I could've been more effective, or more
| diligent, or lived up to my responsibilities more.
|
| But that path leads to burnout. Good work is a marathon, and
| things take time. (Unfortunately it sometimes seems ~impossible
| to internalize that, and the temptation to sprint is always
| there.)
|
| If you're looking for a mental hack to make the feeling go
| away, the only thing that helps me is to remind myself that
| even small deltas have value. My personal goal is to make
| imagenet2012 accessible to every programmer. It's a small,
| obscure itch that I am scratching for myself. But it's mine,
| and I can fix it, which is good enough.
|
| So just do what you can, where you can, and be authentic. No
| one can know how things will play out. Doing your best is all
| you can ask of yourself.
| 58x14 wrote:
| Hey, congratulations and great job!
|
| I find there's a perpetual equilibrium between feeling
| confident in your output / yourself, and recognizing that
| much of what you do will likely be incomplete, messy, sub-
| optimal. This seems to be a fundamental part of being human
| as it extends across all types of creation.
|
| Authors have stream-of-consciousness to overcome writers'
| block. Athletes get the 'yips'. Developers have probably
| heard "if you're not ashamed of your MVP, you took too long
| to ship." (does anyone know who originally said this?)
|
| Doubt is a massively powerful and underrated tool that tends
| to signify the presence of many new variables. It's like a
| beacon saying "hey this is unprecedented" and the pursuit of
| any challenge will naturally yield unprecedented outcomes. In
| your context, you went from "hey let's do a thing" to "the
| Github CEO wants to call me and talk about this thing and
| there are multiple people that want to do this thing" and
| that is pretty damn unprecedented.
|
| I've experienced >3 truly remarkable situations like you, and
| wandered between inflated ego, utter confusion, guilt, and
| pure existentialism. Honestly, I'm glad I felt such a
| spectrum of emotions because in retrospect those lenses
| provide me a lot of clarity when I invariably encounter
| another entirely baffling scenario.
|
| I think your self-assessment is as balanced as it can be, and
| I'm certain that as you continue, you'll adjust the weights
| (heh) and become more comfortable... or maybe not. Maybe a
| hallmark of being a creator, founder, leader, is to double
| down on the discomfort, and rest later. Kind of like a
| marathon.
|
| I'm following along. Good luck.
|
| P.S. if you see this in time can you ask Nat what he thinks
| of the federated wiki?
| https://github.com/WardCunningham/Smallest-Federated-Wiki
| sdevonoes wrote:
| IMHO, to realize that I am not working as diligently or
| effectively as I ought to be and being ok with it, is the best
| thing ever happened to me. I'm not a machine, my goal is not to
| become better or more productive. As one once said: "self-
| improvement is just masturbation". I look for the higher goal:
| long-term satisfaction.
|
| And to be honest, I imagine Fowler could already retire and
| have zero financial problems for the rest of his life; that
| helps a lot regarding giving a damn about productivity.
| MathMonkeyMan wrote:
| I had a discussion with a friend in college about this. We were
| both doing dual bachelors in Music and Physics, graduation was
| approaching, and it was coming time for each of us to choose
| whether we'd pursue research, art, or other.
|
| He was perhaps smarter than me and worked harder. I asked him
| what it was that motivated him, and he said that it was a sense
| of guilt that had been instilled in him by his parents. I told
| him that guilt is a destructive motivator, at least in the long
| run. He replied that it actually worked well for him and he was
| glad to have it.
|
| I also am sometimes motivated by guilt. Does it bother me
| because I'm more aware of it, or am I right in thinking that
| there are better motivations within reach?
| sillysaurusx wrote:
| That works until you hit 30. Beyond that, watch out. You
| won't merely get worn out; you'll get worn down.
| peakaboo wrote:
| You make different choices during the day and you do it against
| your own will at first. You won't feel like it, and your mind
| will tell you tomorrow, but since you expected that, you do it
| today.
| _spduchamp wrote:
| Don't live by other people's expectations. Always live by your
| own, and always reassess your expectations. One day at a time.
| Do something, or don't, no biggie.
| DoreenMichele wrote:
| I have workaholic tendencies. It bothers me a lot less than it
| used to.
|
| I've resolved a lot of personal issues that are not supposed to
| be fixable and that makes it easier to feel like "Whatever I
| accomplish today, it's _enough._ " I set goals for what I need
| to do next and I try to be realistic about how much I can
| actually do and I have made my peace with the fact that I'm
| only one person, I can only do so much.
|
| Either the road rises up to meet me or it doesn't. There are
| parts of it I have no control over and if the world just
| doesn't want me to succeed at certain things, I simply won't
| through no fault of my own.
|
| There has to be fertile ground for a thing. Thinking otherwise
| is often an oversized ego talking or some kind of baggage from
| broken mental models people get fed.
| PragmaticPulp wrote:
| > how does one/how do we end up feeling like this? And how can
| you work toward not feeling this way?
|
| It's a broad question because there are many underlying causes.
|
| Some people have unrealistically high expectations for what can
| be accomplished. As engineers, it's easy for us to visualize
| the big picture of how things would look when they're finished,
| but forget all of the details and difficulties that must be
| overcome along the way.
|
| Some people spread themselves too thin across too many
| projects, such that none of them see any rapid progress. I know
| a lot of brilliant people who could accomplish great things if
| they'd just make the choice to stop all of their side projects,
| learn to say "no" to new requests, and pick one initiative to
| be their main focus.
|
| Some people think they want to deliver results and finish
| things, but when it comes down to it they actually prefer the
| craft part of the process rather than the finishing part.
| They'd rather write and re-write the same code 20 times until
| they've perfected it and generalized it for every possible
| situation, rather than ship an imperfect version that gets
| things done.
|
| And some people genuinely _aren 't_ working diligently or
| effectively, usually because they haven't yet learned how. I
| see this a lot in younger people I've mentored: They aren't
| getting much work done, but they also can't figure out where
| all of their time is going every day. In one case, I worked
| with someone who couldn't figure out why they were so
| unproductive and exhausted every day until they enabled a time
| tracker on their phone and discovered that they were losing
| over 8 hours every day to playing on their phone screen. The
| worst part was that they weren't really enjoying it, either.
| They just got into the habit of wasting time on social media
| and it spiraled out of control. Needless to say, getting a
| handle on that was life-changing in terms of what they could
| accomplish everyone else in their lives.
| taurath wrote:
| You have to ignore both societal and organizational pressure.
| These come in sometimes subtle ways both internally from your
| own psychology but also in the form of stated and unstated
| expectations from coworkers management and partners.
|
| Time alone not working helps this, meditating helps, anything
| that gets you away from the fracas of life. But also the best
| way is to develop things you care deeply about that have
| nothing to do with your job. May be a sick family member, could
| be a community organization, could be time to play the piano.
| ljm wrote:
| I get there when I feel unsatisfied with the problems I'm
| solving. Maybe I ended up fighting fires for a day or two, say,
| and fighting fires doesn't bring me pleasure while my main body
| of work does. So, even though the fire fighting has immense
| value to those who benefit from the fires being put out, and
| I'm really good at doing what it takes to put them out quickly,
| I didn't start the fires myself and I didn't get _my_ work
| done. I feel like a rescuer rather than an effective
| contributor and then I have to start trying to compensate for
| it.
|
| This is also touching on burnout. There's just a kind of
| programming work that is mentally draining and unfulfilling
| because the underlying problems or mistakes are entirely self-
| inflicted. Spending time fixing shit that didn't have to be
| broken.
| layer8 wrote:
| For me, the reason is that things which are straightforward to
| conceptualize often take a surprising amount of work to
| actually implement (many nitty-gritty details, unforeseen
| complexities, suboptimal tools). In addition, in hindsight one
| often realizes that there was a quicker or more effective way.
|
| As a result there tends to be a mismatch between the expected
| and actual efficiency of the work. Even if the complexities are
| not one's fault, overly optimistic expectations are.
| Furthermore, it's simply frustrating that implementing
| seemingly straightforward ideas often takes so long. There is a
| conviction that there must be a better, more efficient way, and
| that one could obviously do better.
|
| I suspect that there is a correlation with an affinity for
| abstract thinking, because abstracting from the details causes
| underestimating the required effort, perpetuating the mismatch.
|
| Embracing the mismatch and giving up the expectations also
| means giving up one's aspirations ("I should be able to do
| this") to a certain extent, which is hard if they are an
| integral part of one's self-image.
| OneEyedRobot wrote:
| >how does one/how do we end up feeling like this?
|
| Maybe it's just that he notices, as any introspective person
| might, that you just start doing the same damn thing over and
| over after 20/30/40 years in harness.
|
| He probably should take up the piano.
| bumby wrote:
| > _how does one /how do we end up feeling like this?_
|
| For me personally, this feeling arises when I become overly
| focused on an end-state. My mitigation is focusing more on the
| process and trusting that, over time, the end-goal becomes a
| natural outcome of an effective process.
| gpsx wrote:
| I have been working on a large side project which is no longer
| just a side project. I am not getting as many hours of work in
| as I would like, but at the same time I know if I tried to do
| more, I wouldn't be productive. In fact I'd do negative work.
| Years ago I would push through and work anyway (I am a real
| goal oriented person.) Knowing what I do know now, all I can do
| is shrug my shoulders. It's like distance running - for all the
| desire to work harder and do better, speeding up won't get you
| to the finish line faster.
|
| If you have some sense of your limitations, you no longer can
| really feel guilty about being lazy for this. It may be worse
| though, because then you can feel bad about your capability.
| Hopefully that is something you can just accept.
| kybishop wrote:
| Lots of comments here opposed to Martin Fowler's advice. I'm
| curious if anyone who is anti-Fowler has software design books
| they _do_ recommend? (Asking because I'd love to read them)
| detaro wrote:
| Since the problem usually isn't with the software design
| advice, but "people read software design books and then try to
| force whatever they read into their projects", I guess what
| would make a book "good" for that is "the author isn't popular
| enough to cause something to be trendy". IMHO Fowlers writing
| is just fine as "these are things people have done and you
| might consider" (and what I've read mostly seemed to be written
| that way, not overly pushy), but its so popular that if he
| writes about a new thing, too many people then jump onto it as
| the next big thing, if it matches their problems or not, and
| that gets painful to work with. Although for Fowler to write
| about something, I think it already has some trendiness going
| on and he's not usually on the forefront of new ideas?
| amw-zero wrote:
| The people that don't like him don't enjoy any books. They just
| enjoy "getting stuff done." That's really what I find when
| talking to people about why they don't like concepts that he
| introduces. They have no alternative, they just don't like
| people who come across as dogmatic.
___________________________________________________________________
(page generated 2021-08-29 23:01 UTC)