Is Software Engineering Real Engineering? • Hillel Wayne • YOW! 2023

preview_player
Показать описание
This presentation was recorded at YOW! Perth 2023. #GOTOcon #YOW

Hillel Wayne - Chief Everything Office at Windy Coast Consulting @hillelwayne2899

RESOURCES

ABSTRACT
What makes software engineering different from “traditional” engineering? To find out, I interviewed 17 “crossovers”: people who have worked professionally as both a software and a traditional engineer. In aggregate, we learn three things: we are in fact engineers, we’re not actually that different as a field, and there’s a lot we can both teach and learn. [...]

TIMECODES
00:00 Intro
00:50 Is software development a branch of engineering?
04:40 Let's talk to engineers
05:13 3 questions
06:04 First Q: Are we really engineers?
17:54 Second Q: How similar are we to traditional engineering?
32:26 Third Q: What can we learn from each other?
34:28 What can we teach?
36:45 Version control
37:50 Conclusion
39:07 Outro

Download slides and read the full abstract here:

RECOMMENDED BOOKS

#SoftwareEngineering #Programming #SoftwareDevelopmentTutorial #ProgrammingTutorial #ProgrammingOverview #Modularity #HillelWayne #SoftwareEngineer #Iterative #Incremental #Empirical #Experimental #Feedback #Coupling #Abstraction #Cohesion #Modularity #Change #Complexity #VersionControl

Looking for a unique learning experience?

SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily.
Рекомендации по теме
Комментарии
Автор

Was chemical engineer for over 10 years before trading in steel toes for slippers. Don’t forget all the engineering subclasses. E.g. a chemical engineer could be a capital engineer, quality engineer, R&D engineer, process engineer, etc.

My take: a person trained to think systematically about creating outputs from inputs given constraints (time, cost, quality, risk)

jonton
Автор

Yesss, I've been waiting for this. :)

chris.dillon
Автор

I know several engineers: dad, nephew, former classmates. They get a degree in Engineering so they never have to do any actual engineering.

BryonLape
Автор

I think BlenderBIM allows construction people to collaborate GIT style on CAD drawings.

andrewmalcolm
Автор

Software Engineering is more like a theoretical field in the sense that code is independent of matter, Same as in Mathematics.

In the other engineering fields you have to deal with the electrical resistance of this metal (EE), How hard it is (ME), The reaction that it makes with another substance (CE), And pay money to go and get that metal.

In Software and Math there isnt such a thing and are just independent of all those considerations.

Even though most Software Engineering jobs do not require advanced Math, It is still closer to Math than other engineering fields.

For example in Math you can define your own algebraic structures with their own interpretation of + and × symbols (See Abstract Algebra) and implement that directly in a class in your favourite object oriented language, You can even defined 1 + 1 = 0 and no problem. Indeed SE is in a sense a lot closer to Math. And special languages like Lean4, Idris, Coq, Agda, Haskell etc. try to combine those together.

astroid-wspy
Автор

37:01 what’s funny about the Version Control comment is the amount of new software engineering stuff that does not have version control or cannot be version controlled.

brnto
Автор

I learned to program at an engineering company. 😊
I think "software engineer" is a confusion of categories. We write software to engineer information which makes us information engineers.
Developer, coder, writer, implementer could all better describe our relationship to software.

brownhorsesoftware
Автор

Great talk, but imho the lack of elements in "what we can teach" in other professions is exactly what makes them engineering ones - it's engineering, not a book club or a church on Sunday where people gather to talk about things they (don't) like, or listen to the gospel of, say, test-driven development by some self-proclaimed guru you've never heard of. Also, it's much harder to become self-taught in traditional engineering - you need a proper, sometimes rigorous education to enter the workforce, you can't just go and say "I'm a great learner and a nice person" and get hired to write JavaScript. So the key difference is the barrier to entry, and respected opinions dominating the industry standard rather than scientific research. Until there is a worldwide, non-ambiguous standard in place that everyone must comply with in order to call themselves software engineers, it's not engineering. And I'm writing this as a self-taught programmer.

igniter
Автор

"Software is agile"...funniest line ever.

BryonLape
Автор

Simple answer, no, no it isn't engineering. I've been developing software for 40 years, and I studied with engineering students several times during that career. They have almost nothing in common.

Tony-dprl
Автор

Every tech conference: tech always breaking and sound is always crap.

BryonLape
Автор

No, you’re not engineers, just like carpenters are not civil Engineers and mechanics are not mechanical engineers.

dekev
Автор

@DavidEvans Udacity course intro to cs
Or his book... quite a compelling argument

ptahnam