Authored by: SilverWave on Monday, April 23 2012 @ 09:28 PM EDT |
.
---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions
[ Reply to This | Parent | # ]
|
|
Authored by: lwoggardner on Monday, April 23 2012 @ 09:29 PM EDT |
Presumably actual engineers have a problem with "software
engineer" too.
As someone who is called an "Architect" in computing terms
please accept my sincere apologies for your heartburn.
As way of amends, please enjoy this joke from somewhere on
the interwebs.
Q: How many "enterprise architects" does it take to change a
light bulb
A: Depends on your definition of "enterprise architecture".
[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 09:39 PM EDT |
Whether you like it or not, the term "software
architech" is not going away. It works well for us -
programmers. What we mean by that you
may call "superstructure". Or maybe not. You are right
- we know
nothing about your profession. For us, we mean the
highest level
organization of our software. Perhaps you would like
to share with us
your understanding of the meaning of the word
"architecture".
Gringo
Sent from my smart phone[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 09:54 PM EDT |
One difference between traditional construction engineers and architects is that
their errors (bugs) have the potential to kill or injure people or cause
significant property damage. Typically traditional registered engineers and
architects carry lifetime personal liability for their work and go to great
lengths to be sure there are no errors (bugs) in their work.
Perhaps software engineers and architects should aspire to this.[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 10:00 PM EDT |
Everyone knows that architects are only there to make life
difficult for builders :-)[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 11:25 PM EDT |
Are you really that insecure?
[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 12:04 AM EDT |
I've been working with architects and interior designers as a
bookkeeper/controller or nearly 21 years. I wrote some internal web
applications and furniture specification documentation applications with
java
and tomcat and PostgreSQL. Did stuff with Access and VBA, including
write a
darn good accounting system. Wrote some AutoLisp utilities and
other utilities
for transforming poorly formatted exports via Haskell.
No, I never called
myself an architect, but it is a design process. Never
called myself an
engineer, but I can see a parallel: there are laws of
mathematics as inviolate
as laws of physics and there are choices to be
made as to what costs of space
and time are to be balanced against
usability in order to ship the best
solution available now. And then, after
shipping, I'd eat my own dog food and
de-annoy the interfaces and
workflow I had concocted. I had one advantage
over the architects,
I could build up designs, to extend functionality
incrementally. Architects
cannot say, this a good kitchen counter, let's put a
house around it. But the
actual modules (for those asking what's a module, it's
an organizational
device that is some where between java's class and package
structures) of
code that I wrote and trusted reminded me of the architectural
detail
drawings that architects would develop once and reuse as appropriate.
This is a generational item as modern building model software, which is
built
around the computer science concept of Object Oriented
Programming, figures out
the details as a consequence of the objects
added to
the model. Software is
why the
value of architecture has moved away from the drawing and into the
expertise of forms, function and materials. Sadly, the customers still
attribute 50% of the value to Construction Documents and are putting
pressure
on fees. They know the documents takes less time and
do not acknowledge how
much more time SD and DD require for that CD
phase to be accelerated.
[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 01:31 AM EDT |
As a mechanical engineer working as a system architect I don't have any
arrogance problems with computer engineers, "real architects", or others. In
fact, a really good friend who died much too early was a civil engineer, her
father an architect. She always warmly welcomed the term software architect or
system architect as she immediately understood the work to do in all these
fields has very similar underlying structure. [ Reply to This | Parent | # ]
|
|
Authored by: jbb on Tuesday, April 24 2012 @ 01:35 AM EDT |
The
Wikipedia
gives a good explanation of what the term "software architect" means including
this snippet:
[An] architect makes high-level design choices much
more often than low-level choices. In addition, the architect may sometimes
dictate technical standards, including coding standards, tools, or platforms, so
as to advance business goals rather than to place arbitrary restrictions on the
choices of developers.
That's partly how I see the job. It is
actually very tricky because to do it right you really need to have a deep
understanding of the low level implications of your high level decisions. It is
not at all like a management position (although there can be overlap). It
requires a lot of experience and wisdom.
For example, a few days ago
someone posted saying that the design of an API usually develops naturally as
you write the code to implement it. I don't want to launch a big top-down
versus bottom-up flamefest but I agree with what that poster said. There is a
famous Perlis epigram:
Everything should be built top-down, except
the first time.
The reason for this is that the top level design
needs to be informed by the bottom level requirements. My approach to design
is to always write the innermost loops first and then let the rest of the code
dance around the requirements of the inner loops.
What a software
architect is supposed to do is to assess the low level requirements of the inner
loops without having to first write all the code that implements them. This lets
the architect create a top level design so tasks can be parceled out to a team
and everyone can work in parallel. If done correctly then the system works when
everything is brought together. When done incorrectly then the project is a
dismal failure and a lot of the hard work needs to get redone. Just one mistake
can be costly or even disastrous.
On the plus side, you might consider the
use of the term "software architect" as a compliment since in some circles it is
used interchangeably with the term "software god".
--- Our job is to
remind ourselves that there are more contexts than the one we’re in now — the
one that we think is reality.
-- Alan Kay [ Reply to This | Parent | # ]
|
|
Authored by: Ian Al on Tuesday, April 24 2012 @ 06:55 AM EDT |
They need an architect to draw up the blueprints.
---
Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid![ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 10:02 AM EDT |
Perhaps you should come off your high horse and look up the actual definitions
of the words "architecture" and "architect". They have
broader meanings than
what you're acknowledging, and those meanings are quite old, pre-dating
computers by a long time, and a quite good fit for what computer and software
architects actually do.[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Wednesday, April 25 2012 @ 06:15 AM EDT |
Actually it is a very corporate term. You hear it at
places like IBM and Oracle.
Programmers normally call themselves programmers
or software enineers. Use of titles like this is usually
for the purpose of distinguishing oneself from people
who handle "lowly" implementation details. You see a
software architect" is someone who only handles the
big-picture - and may even only do design work and
not actual coding.[ Reply to This | Parent | # ]
|
|