5 ms·
Hi, I am the guy that came in a few years later and had to reimplement a bunch of custom (undocumented) Lotus Notes applications in order to move actual documen
by Pamar 8y ago
Hi, I am the guy that came in a few years later and had to reimplement a bunch of custom (undocumented) Lotus Notes applications in order to move actual documents to a proper document management system (with access profiles and searchability) integrating the apps in an intranet portal, allow them to talk with other applications and finally put everything under SSO.
Thank you for the experience.
- wslh 8y agoSpeed vs reliability is a common tradeoff in the workplace. Everyone hates the apps or tools that were built before you start working.
- Pamar 8y agoIn my experience speed vs. reliability soon transmogrifies in inertia vs. rational (and usually inertia wins). I'd like people that create "quick prototypes" and "just a throwaway excel with a few macros" realized that while they are valuably shortening the time to get something usable they are also shortening the time before their thing turns in a sort of albatross tied to the neck of the users.
- prepend 8y agoI find this better than the people who try to build 3-tier sql dB driven apps for all those scenarios. My estimate is that for every 20 “throwaway Excel,” only one becomes used heavily and required a painful redesign. Trying to build all these correct from the start is actually inefficient because 1) you don’t know which 20 is right until quite a while in; 2) the idea that better requirements gathering and design is a myth as functionality and use is frequently, in my experience, new based on the spreadsheet and users don’t tell this to the design team; 3) the cost of properly designing all 20 is enormous so trying to pick only the most likely 5 is still expensive and has a decent probability of producing zero useful systems. So while it sucks to be the engineer cleaning up some yahoo’s hack that got used by the CEO, I’m not sure what the solution is that is best for the enterprise.
- candiodari 8y agoThis is a board with 90% or so software developers. Your point, of course, is accurate. It's going to get torn down anyway. It's like convincing lawyers that they're not needed in situation X. Doesn't work.
- prepend 8y agoI’m a software developer. I build big things, and I wrestle through rewrites of spaghetti Code. I once had to convert a start up from a cold fusion web site the ceo and biz dev (both non developers) had written. I get it. But I think there are lots of little scripts and one-offs I write that are suitable for me, but would make so sense as a large designed system. Every once in a while they’ll get promoted or reused. The solution to this problem isn’t premature optimization to write all my code with max generalization using on the enterprise approved development platform. But to just accept in life there are positive inefficiencies. There’s also a decentralization argument here somewhere.
- Pamar 8y agoWhat lots of people fail to understand is this: little work-saving apps seems to work magically (for the users) because a lot of the logic, especially how to handle thorny edge cases which nobody considered before, is left in the brain of the user himself. If I designed an app where a particular use case would be handled by "write down the caller's number on a post-it note and then ask George from accounting over a coffee cup at the cafeteria" I would face the firing squad. But ironically enough this is how the "little spreadsheet my cousin helped me with over the weekend" handles this case, and all other unanticipated cases, and this is great because it's not a 3-tier sql dB driven app. (An app that handles everything else, though, and has to meet also regulatory requirements including SOX).
- kristaps 8y agoAgree, understanding this point is a significant milestone on the way to becoming a good engineer.
- m_mueller 8y agoHmm all of the features you describe can be done with Notes/Domino. Granted, it's not pretty, but it's there.
- Pamar 8y agoI'll gladly take your word for this. My company was contracted to do the stuff I described, but the decision came from the customer's IT staff. Maybe it was political to milk more budget for the project. The point I wanted to raise is that excel, DBIII+/Clipper, VB, Access and other "low code" solutions are fine as long they help a single individual (or, at best, a small team like 2-3 people max) to be more efficient. The moment that they need to scale, they become a liability, like... having to add .csv import to your application because the users do all their planning/what-if scenarios on some excel sheet prepared by someone who already have left the company and then they prefer to upload the results (bypassing any of your carefully designed server-side business logic) instead of retyping each value manually.
- p_l 8y agoYet Excel is probably one of the best "UIs" you could support for data entry in the workplace. Damn easy to create new forms, actually not that bad to implement import if the forms aren't brain damaged, it probably beats whatever you make in terms of UX for data entry not to mention ability to massage data locally. The problem is, IMO, the lack of middle ground. A lot of those solutions are old, and integration of more modern functionality is lagging - it's there, but it's not well integrated because the concept of multi-user system with access controls wasn't a concern when the system was originally made!
- Pamar 8y agoAgreed on the middle ground. Specifically, I would really be happy if people that launch themselves into this kind of little projects could (maybe with help from IT) decide "ok, we have reached a point of complexity where this stuff has really to be integrated back in the main system". (And budget appropriately for this to happen).
- lostcolony 8y agoI'm one of the team that was hired to take the Excel app that one overdue-to-retire person had spent 20+ years developing (without documentation, and inserting every miscellaneous feature he felt was desirable, regardless of actual need, and which, of course, he wanted all of to be kept) for the entire company's metrics and reporting, and turn it into something that could actually be understood by anyone else, with proper database normalization, API access, etc.
- tda 8y agoObligatory xkcd: https://xkcd.com/1667/ https://xkcd.com/1667/
- rahimnathwani 8y agoYes, we stand on the shoulders of giants :)
- lostcolony 8y agoGiant ~something~, certainly
- rahimnathwani 8y agoI understand the sentiment, but you are assuming: 1. The applications I created were undocumented. They weren't. 2. The applications I wrote were used for managing documents. They weren't (with one exception, which was for publishing process manuals on the intranet, to save trees and improved searchability. That app had no functionality except for the Lotus Notes built-in storage/retrieval/search, and each record had 3 fields: title, reference, content).
- Pamar 8y agoYou are wrong: the project I described is real but was most assuredly not for the company you worked with (for a start, it was for a big Utilities company... in Italy). I just wanted to explain what happens to all the effort-saving nice little apps that people wrote to solve a real problem in the workplace... and I wasn't picking up on you specifically, I am sure you did your best and that using the tool at the time made perfect sense. It's just that the real problem (IMHO) has never been "wow with Lotus Notes or whatever I am really productive even if I am not a full fledged developer" - the real problem is who takes responsability for it and how much of a struggle it will be to move the functionality back to a properly intgrated application. (So apologies, it was just a rethorical trick on my part).
- slantyyz 8y agoThis is a real misconception a lot of programmers have about Lotus Notes shops. I also worked in a Lotus Notes shop for several years. We built apps on Notes/Domino and did some pretty cool stuff pre-dot-com, including a Project Management system like Basecamp[1] that was a hosted SAAS (using Domino's web server) in 1998 (crazy to think that was 20 years ago), when SAAS was just a buzzword. IIRC, more than half of our company's Notes development staff were comp sci grads. It wasn't just a bunch of random dudes throwing a bunch of forms together using the built-in formula language. [1] https://books.google.ca/books?id=jlIEAAAAMBAJ&pg=PA52&lpg=PA52&dq=%22involv%22+review&source=bl&ots=Pxi4xS_6dw&sig=L45wfxpBQPw34JEsZuoa6qcZrI4&hl=en&sa=X&ved=0ahUKEwiIg-me8dXbAhVJ1lMKHVe0CBoQ6AEIPDAE#v=onepage&q=%22involv%22%20review&f=false https://books.google.ca/books?id=jlIEAAAAMBAJ&pg=PA52&lpg=PA...
- projectramo 8y agoI have also found that when I enter a new workplace, everything done before me was a mess of unwieldy, poorly documented and unstructured code. Worse it uses an old, archaic platform that is long overdue for a complete overhaul. Then when I arrive, I make everything logical, nice, structured and proper. After I leave, once again the place falls prey to disorganized minds who take my work and mess it up for flashy new technologies that are not as reliable as what I had done. For some reason, this keeps happening. edit: corrected word thanks to @brlewis
- occams_chainsaw 8y agoYou are also the people before and after you
- zellyn 8y agoThat's the joke.
- intrasight 8y agoI needed that laugh
- brlewis 8y agos/workforce/workplace/ Otherwise perfect. :-D
- archgoon 8y ago> Then when I arrive, I make everything logical, nice, structured and proper. Not to mention self-documenting.
- will_dev_4_food 8y agoI, too, would like to pat myself on the back for having excellent code management skills, and problem solving. But most of all, for going completely meta on people.
- eitland 8y agoThis is a nice joke. However I've seen it for real too: a former boss calling me about a problem with a Sybase Adaptive Server Anywhere problem. So I tell him I've forgotten it all but it is all documented in the wiki I set up with the guy who supported the system after me so, just search for Sybase. Well... Turns out that documentation is gone.
- j45 8y agoIt seems a little presumptuous to assume every app in any language is not built well. A mess can be made in any language, by every developer, if we're improving every day, looking back, our work looking back 5 years will always look and often feel like garbage.
- fiatjaf 8y agoI wonder what people did with your big integrated and centralized ivory tower after you left.