Yes, so essentially I try a few things, I try to find a naive and simplest solution and not ever worry about optimizations. If I fail in that case I try to find a simpler variation of the problem and solve that, if not I keep reducing the problem down. If the problem is reduced down I can explain it to someone else and ask them. Then or from that reduced problem I try and figure out what class of problems it belongs to. If you get anxiety you should ask around, and do what you are doing ask the internet using concise language.
I feel like it can't be understated how amazing 'asking the internet' is today. I regularly post questions on repos or SO where the software creators directly answer, with their intent. We have countless means of interacting with the ones that create the tools we work with (including HN!).
I know that there's some hairiness around maintainer manners and the drama expected in any large enough group of people, but our ability to communicate with our peers is really advanced compared to other disciplines.
this is pretty much on point, and this is why fasting and IF and reducing carbs increasing fat intake (without sugar) has been the main course action for most people concerned for their health.
Every time I see a post, about TensorFlow for Swift.
There seems to be so many misconceptions about why this it was created. The top one being, oh it's Chris L's baby.
As a Software Engineer, who's been working on teams for the past 15 years and seeing the craft devolve, and the market saturate with people whom don't understand that fundamentals but memorize the frameworks, you need a language like Swift to bridge that gap.
It's hard enough to get people to program to an interface, let alone communicate what they are gonna return from a function or how a function behaves. 70% of people don't understand software engineering is legitimately just plumbing, they think its pretty much an artistic endeavour with no rhyme or reason. This makes it pretty difficult to stay on the same page, when building a product to scale up.
Having a strong type system solves that problem. When working with ML people my question 100% of the time is what does that function, return what type?, so I can build off what you are doing, or even debugging requires understanding of the type and the values.
It seems like team orientated programming is foreign to most people.
Swift has a low cognitive load pushing you to solve problems, with Software Engineering and reducing communication lead time between engineers.
All languages eventually converge Swift, I think Chris L has solved the language UI problem.
There is nothing special about Swift that ML languages, or .NET eco-system didn't offered already, Chris L might be a very good technical person, with several achievements, however Swift without iOS is just yet another ML/Modula-3 language with "modern" syntax.
Most people regret that Google did not invest in Julia but, to my mind, it misses the point.
Swift for TensorFlow's unique selling point was bringing a strong type system and ML+autodiferentiation together. That, for me, would be a huge boost to push ML code to production quality.
Hey So I view Software Engineering as a multidimensional optimization surface where you have to optimize for a goal by choosing an axis and playing with those axis until you get a desired result.
Mastering the language but understanding why the language was developed what problems it looked to address.
Reducing the cognitive load of the design using the language.
Understanding the fundamentals of the types of applications you will be building.
SCRUD Architecture Apps Streaming Architecture Apps and Games which are usually a combination of both.
Software Systems from first principles are read and write systems. How do you represent that as a program and reduce the complexity?
How you view software engineering ? and explain it to others what is the method of representation you use to encode software as plumbing? is it text based? time flow graph node based? stack based ? binary based ?
Software engineering as a team sport, how do you get a bunch of developers to reduce the cognitive load manage the relationships and data in the code and how do you measure that like a science.
I am also sure there is a lot of valid advice here as well. This is how. I see it from a mathematical / science perspective that pushes pragmatic narrative.
yeah, mainly because its generally getting more difficult to distill ideas and keep people interested, highly applicable to communications in engineering