Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. I hate "KISS"

I hate "KISS"

Scheduled Pinned Locked Moved The Lounge
javascripthtmlcsharpwpfwcf
58 Posts 28 Posters 27 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Rowdy Raider

    Keep fighting the good fight. If you are using knockout I assume you are also doing MVVM. MVVM is all about maintainability and simplicity, not to mention KISS/SOLID. A couple points for you: A) Just because you don't understand some code doesn't make it bad. B) Those opposing MVVM and enabling frameworks in todays development world are analogous to people in the year 2000 something still calling OO a fad. Regardless implementing a thoroughly tested and production ready framework over writing a bunch of roll your own code is usually going to yield less bugs and more bang for the clients buck.

    S Offline
    S Offline
    Super Lloyd
    wrote on last edited by
    #46

    Rowdy Raider wrote:

    Keep fighting the good fight. If you are using knockout I assume you are also doing MVVM. MVVM is all about maintainability and simplicity, not to mention KISS/SOLID.

    Indeed!!! :-D

    My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

    1 Reply Last reply
    0
    • S Super Lloyd

      Because this is so... subjective!!! Right now at work some people hates me because I routinely replace 20 lines of jQuery (allegedly simple) with 1 Knockout statement (allegedly complicated). [Edit] to make it clear, I am NOT rewriting any existing code. I am talking of new code, which I prefer to write with a short and side effect free knockout statement instead of the (usual) pile of jQuery event and DOM creation method. Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed! Now I am in a quandary, I convinced the client to implement a quite dynamic almost SPA couple of pages, with almost 1000 lines of TypeScript and 600 lines of HTML and knockout (with binding and template). To make it "more simple" I will have to balloon the code size to I dunno how much and spend zillion of hours debugging jQuery event handling and DOM creation spaghetti!!! :mad: (To the point, I don't think I can make it with just jQuery, I have to give up.... it's more dynamic than Facebook for god sake! maybe I exaggerate, but I like to think so! ;P) Well this is the maintenance team which complains about it, my project manager says to forget about it and continue using knockout when appropriate (which my team mates are slowly starting to love too) Now I get sprouted some vague insult... awful code.. you are so selfish and pretentious... why can't you follow KISS and SOLID principle insult every now and then! Very tiresome! While there is no more deaf than those that don't want to listen and I know it's a lost cause.. I still wonder about it... What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery. Yet using Knockout I make it... "excessively complex" for some... (other developer) Mmmm... just wondering what to think of it... [EDIT2] I guess I am looking for a nice repartee to use in the conversation. Which is both convincing and easy to understand! ;P Something like they sprout me SOLID, KISS, I coolly reply this is way more KISS than your KISS version! (which I can't say, because their mere ignorance is proof that my code is not KISS :~ ) [Edit3] To give you an illustration, some people were confused when I started to use lambda expression... (or maybe generic?) (I think I started to get a bad rep for overengineering when I was using these strange things)

      My programming get away... The Blog...[](</x-turndown)

      N Offline
      N Offline
      Nicolas Dorier
      wrote on last edited by
      #47

      Simplicity is always in the eyes of the observer. The question is which eyes to care ? Maybe you can improve the eyes of the maintenance team by training them. But it can only work if they agree to. (Lot's of developers hold grudge against MS will despise knockout and typescript 'just because') On the other hand you can just ignore them. You are the one getting things done, and stackholder pushing your project don't care about whether or not maintenance team can take it. The root of the problem is that HR department indirectly pushes "KISS for everybody" so they can hire more easily. (Which is reflected by the level of your maintenance team, that in your case is clearly incompetent for .NET development) But, at the end of the day, you are the one making another's life better, and in the position to dictate what to use. Final answer : train them, and if they refuse to be trained, ignore them and get stuff done.

      1 Reply Last reply
      0
      • S Super Lloyd

        Well this is difficult in this case. I am not hit by my team mate. But by some remote team who had a look at the source code and with which I can't talk! I already asked them: "let's sit together and 'fix' the code" but... "there is no time"

        My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

        C Offline
        C Offline
        CatchExAs
        wrote on last edited by
        #48

        It can take awhile to change people's long held views. But good luck :)

        1 Reply Last reply
        0
        • S Super Lloyd

          Maybe I was cavalier indeed. I didn't like web development at all, kind of sad doing it. Then I discovered knockout and that I could make quite advanced web app with little effort. Then the customer wanted a new application and we had time to build a prototype. The customer loved my prototype a lot and were quite impressed with it! But some developer hate the technology choice I made. Or the one I didn't make. As far as I can see I can only humanely do these kind of application with knockout or angular (or my own big library). But they hate either choices. And the customer really like my prototype! So my choices was: 1. continue doing spaghetti giant jQeury even handling and DOM manipulation with primitive table CRUD operation 2. sell a (more pleasant to me and more user pleasing) new concept, which displease some other developer I choose 2, maybe I should accept the consequences... but I am ... frustrated... Isn't it part of developer job to keep with the time? Isn't that so much easier when handled a working code base on a platter (as opposed to have to implement it on your own)?!

          My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

          A Offline
          A Offline
          Andy Brummer
          wrote on last edited by
          #49

          The problem isn't with the technology. Knockout is much better than hand rolled jQuery all over the place. It's with the communication and management of the team.

          Curvature of the Mind now with 3D

          1 Reply Last reply
          0
          • S Super Lloyd

            by one statement I mean one statment! not multiple statement on the same line. example 1: helloWordd(); 1 statement, 1 line example 2: hellowWorld(); howAreYou(); 1 line but 2 statements example 3: studliLongMethodNameForAMethodThatDoesNothingMuch(); 1 statement too! ;P example 4: a(); b(); c(); d(); 1 line, 4 statements! :omg:

            My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

            M Offline
            M Offline
            Mark AJA
            wrote on last edited by
            #50

            Example 1 will not work. Error: Syntax error: No such command of function helloWordd(); Try: helloWord() instead. PS. I think I like KISS, but have never found anybody willing to kiss me.

            1 Reply Last reply
            0
            • S Super Lloyd

              Because this is so... subjective!!! Right now at work some people hates me because I routinely replace 20 lines of jQuery (allegedly simple) with 1 Knockout statement (allegedly complicated). [Edit] to make it clear, I am NOT rewriting any existing code. I am talking of new code, which I prefer to write with a short and side effect free knockout statement instead of the (usual) pile of jQuery event and DOM creation method. Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed! Now I am in a quandary, I convinced the client to implement a quite dynamic almost SPA couple of pages, with almost 1000 lines of TypeScript and 600 lines of HTML and knockout (with binding and template). To make it "more simple" I will have to balloon the code size to I dunno how much and spend zillion of hours debugging jQuery event handling and DOM creation spaghetti!!! :mad: (To the point, I don't think I can make it with just jQuery, I have to give up.... it's more dynamic than Facebook for god sake! maybe I exaggerate, but I like to think so! ;P) Well this is the maintenance team which complains about it, my project manager says to forget about it and continue using knockout when appropriate (which my team mates are slowly starting to love too) Now I get sprouted some vague insult... awful code.. you are so selfish and pretentious... why can't you follow KISS and SOLID principle insult every now and then! Very tiresome! While there is no more deaf than those that don't want to listen and I know it's a lost cause.. I still wonder about it... What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery. Yet using Knockout I make it... "excessively complex" for some... (other developer) Mmmm... just wondering what to think of it... [EDIT2] I guess I am looking for a nice repartee to use in the conversation. Which is both convincing and easy to understand! ;P Something like they sprout me SOLID, KISS, I coolly reply this is way more KISS than your KISS version! (which I can't say, because their mere ignorance is proof that my code is not KISS :~ ) [Edit3] To give you an illustration, some people were confused when I started to use lambda expression... (or maybe generic?) (I think I started to get a bad rep for overengineering when I was using these strange things)

              My programming get away... The Blog...[](</x-turndown)

              J Offline
              J Offline
              jschell
              wrote on last edited by
              #51

              Super Lloyd wrote:

              Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed!

              If the average programmer can't maintain it then it isn't maintainable. The only subjective part of that is whether the average programmer can maintain it.

              Super Lloyd wrote:

              What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery.

              Why are you selling to a customer? And why is maintenance not part of the sale?

              Super Lloyd wrote:

              Very tiresome!

              Myself I consider it a compliment when someone says that my code is easy to maintain. That is because I realize (as been proven by numerous studies) that the initial cost to develop something can be anywhere from 50% to 1% of the overall cost to maintain it. And being a professional working in a business (not a hobbyist) and one who likes to be paid I keep the primary goal of a business, to make money, always foremost in my mind. Thus I at least make the attempt to help keep maintenance costs down.

              S 1 Reply Last reply
              0
              • S Super Lloyd

                Because this is so... subjective!!! Right now at work some people hates me because I routinely replace 20 lines of jQuery (allegedly simple) with 1 Knockout statement (allegedly complicated). [Edit] to make it clear, I am NOT rewriting any existing code. I am talking of new code, which I prefer to write with a short and side effect free knockout statement instead of the (usual) pile of jQuery event and DOM creation method. Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed! Now I am in a quandary, I convinced the client to implement a quite dynamic almost SPA couple of pages, with almost 1000 lines of TypeScript and 600 lines of HTML and knockout (with binding and template). To make it "more simple" I will have to balloon the code size to I dunno how much and spend zillion of hours debugging jQuery event handling and DOM creation spaghetti!!! :mad: (To the point, I don't think I can make it with just jQuery, I have to give up.... it's more dynamic than Facebook for god sake! maybe I exaggerate, but I like to think so! ;P) Well this is the maintenance team which complains about it, my project manager says to forget about it and continue using knockout when appropriate (which my team mates are slowly starting to love too) Now I get sprouted some vague insult... awful code.. you are so selfish and pretentious... why can't you follow KISS and SOLID principle insult every now and then! Very tiresome! While there is no more deaf than those that don't want to listen and I know it's a lost cause.. I still wonder about it... What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery. Yet using Knockout I make it... "excessively complex" for some... (other developer) Mmmm... just wondering what to think of it... [EDIT2] I guess I am looking for a nice repartee to use in the conversation. Which is both convincing and easy to understand! ;P Something like they sprout me SOLID, KISS, I coolly reply this is way more KISS than your KISS version! (which I can't say, because their mere ignorance is proof that my code is not KISS :~ ) [Edit3] To give you an illustration, some people were confused when I started to use lambda expression... (or maybe generic?) (I think I started to get a bad rep for overengineering when I was using these strange things)

                My programming get away... The Blog...[](</x-turndown)

                R Offline
                R Offline
                RafagaX
                wrote on last edited by
                #52

                For me Keeping It Simple means that anyone in the team is able to understand, maintain and modify what i'm doing without too much trouble (or too much asking), and/or that it have less probability to go wrong, from this point of view, using one line of Knockout would be simpler, because it could fail less often than 20 lines of hand rolled jQuery that do DOM manipulation, and the maintenance team just need to learn a new tool to be able to maintain it!

                CEO at: - Rafaga Systems - Para Facturas - Modern Components for the moment...

                S 1 Reply Last reply
                0
                • S Super Lloyd

                  Because this is so... subjective!!! Right now at work some people hates me because I routinely replace 20 lines of jQuery (allegedly simple) with 1 Knockout statement (allegedly complicated). [Edit] to make it clear, I am NOT rewriting any existing code. I am talking of new code, which I prefer to write with a short and side effect free knockout statement instead of the (usual) pile of jQuery event and DOM creation method. Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed! Now I am in a quandary, I convinced the client to implement a quite dynamic almost SPA couple of pages, with almost 1000 lines of TypeScript and 600 lines of HTML and knockout (with binding and template). To make it "more simple" I will have to balloon the code size to I dunno how much and spend zillion of hours debugging jQuery event handling and DOM creation spaghetti!!! :mad: (To the point, I don't think I can make it with just jQuery, I have to give up.... it's more dynamic than Facebook for god sake! maybe I exaggerate, but I like to think so! ;P) Well this is the maintenance team which complains about it, my project manager says to forget about it and continue using knockout when appropriate (which my team mates are slowly starting to love too) Now I get sprouted some vague insult... awful code.. you are so selfish and pretentious... why can't you follow KISS and SOLID principle insult every now and then! Very tiresome! While there is no more deaf than those that don't want to listen and I know it's a lost cause.. I still wonder about it... What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery. Yet using Knockout I make it... "excessively complex" for some... (other developer) Mmmm... just wondering what to think of it... [EDIT2] I guess I am looking for a nice repartee to use in the conversation. Which is both convincing and easy to understand! ;P Something like they sprout me SOLID, KISS, I coolly reply this is way more KISS than your KISS version! (which I can't say, because their mere ignorance is proof that my code is not KISS :~ ) [Edit3] To give you an illustration, some people were confused when I started to use lambda expression... (or maybe generic?) (I think I started to get a bad rep for overengineering when I was using these strange things)

                  My programming get away... The Blog...[](</x-turndown)

                  K Offline
                  K Offline
                  Kirk Wood
                  wrote on last edited by
                  #53

                  The problem isn't KISS. The problem is people who are not keeping their skills up to date. If they were always keeping up to date, they would take some time to evaluate the issue and see that things have improved and they can avoid all those lines. It is a problem to maintain because it looks like magic to them and they don't know the incantation. Chances are, they program by finding some code that does similar and modifying it as best they can. And there is a better than even chance these people don't really get what is happening there either.

                  1 Reply Last reply
                  0
                  • J jschell

                    Super Lloyd wrote:

                    Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed!

                    If the average programmer can't maintain it then it isn't maintainable. The only subjective part of that is whether the average programmer can maintain it.

                    Super Lloyd wrote:

                    What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery.

                    Why are you selling to a customer? And why is maintenance not part of the sale?

                    Super Lloyd wrote:

                    Very tiresome!

                    Myself I consider it a compliment when someone says that my code is easy to maintain. That is because I realize (as been proven by numerous studies) that the initial cost to develop something can be anywhere from 50% to 1% of the overall cost to maintain it. And being a professional working in a business (not a hobbyist) and one who likes to be paid I keep the primary goal of a business, to make money, always foremost in my mind. Thus I at least make the attempt to help keep maintenance costs down.

                    S Offline
                    S Offline
                    Super Lloyd
                    wrote on last edited by
                    #54

                    jschell wrote:

                    Why are you selling to a customer?
                    And why is maintenance not part of the sale?

                    Let's say I sold Facebook. It's not Facebook of course, but it is a little bit more dynamic. Things are popping here and there, there are multiple dynamic view of the same data. Mmmm... in an other word it's a SPA (single page application) Now I just can't develop a SPA with JUST jQuery. At the very least I would need to write a library of utilities. They are against (home made) libraries. If my code is not all on the page is too complicated. And this... is... just... beyond... my capabilities...

                    My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

                    1 Reply Last reply
                    0
                    • R RafagaX

                      For me Keeping It Simple means that anyone in the team is able to understand, maintain and modify what i'm doing without too much trouble (or too much asking), and/or that it have less probability to go wrong, from this point of view, using one line of Knockout would be simpler, because it could fail less often than 20 lines of hand rolled jQuery that do DOM manipulation, and the maintenance team just need to learn a new tool to be able to maintain it!

                      CEO at: - Rafaga Systems - Para Facturas - Modern Components for the moment...

                      S Offline
                      S Offline
                      Super Lloyd
                      wrote on last edited by
                      #55

                      There is also the fact I just CAN'T develop what the customer now want (my prototype, a nice SPA (Single Page App) with JUST jQuery and NO home made library.

                      My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

                      1 Reply Last reply
                      0
                      • S Super Lloyd

                        Because this is so... subjective!!! Right now at work some people hates me because I routinely replace 20 lines of jQuery (allegedly simple) with 1 Knockout statement (allegedly complicated). [Edit] to make it clear, I am NOT rewriting any existing code. I am talking of new code, which I prefer to write with a short and side effect free knockout statement instead of the (usual) pile of jQuery event and DOM creation method. Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed! Now I am in a quandary, I convinced the client to implement a quite dynamic almost SPA couple of pages, with almost 1000 lines of TypeScript and 600 lines of HTML and knockout (with binding and template). To make it "more simple" I will have to balloon the code size to I dunno how much and spend zillion of hours debugging jQuery event handling and DOM creation spaghetti!!! :mad: (To the point, I don't think I can make it with just jQuery, I have to give up.... it's more dynamic than Facebook for god sake! maybe I exaggerate, but I like to think so! ;P) Well this is the maintenance team which complains about it, my project manager says to forget about it and continue using knockout when appropriate (which my team mates are slowly starting to love too) Now I get sprouted some vague insult... awful code.. you are so selfish and pretentious... why can't you follow KISS and SOLID principle insult every now and then! Very tiresome! While there is no more deaf than those that don't want to listen and I know it's a lost cause.. I still wonder about it... What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery. Yet using Knockout I make it... "excessively complex" for some... (other developer) Mmmm... just wondering what to think of it... [EDIT2] I guess I am looking for a nice repartee to use in the conversation. Which is both convincing and easy to understand! ;P Something like they sprout me SOLID, KISS, I coolly reply this is way more KISS than your KISS version! (which I can't say, because their mere ignorance is proof that my code is not KISS :~ ) [Edit3] To give you an illustration, some people were confused when I started to use lambda expression... (or maybe generic?) (I think I started to get a bad rep for overengineering when I was using these strange things)

                        My programming get away... The Blog...[](</x-turndown)

                        L Offline
                        L Offline
                        Lost User
                        wrote on last edited by
                        #56

                        You can routinely replace 20 lines of jQuery with one line KonockoutJS? Interesting.

                        S 1 Reply Last reply
                        0
                        • L Lost User

                          You can routinely replace 20 lines of jQuery with one line KonockoutJS? Interesting.

                          S Offline
                          S Offline
                          Super Lloyd
                          wrote on last edited by
                          #57

                          It's a bit of an exaggeration... with one statement you create a UI which automatically change when your data change and at the end... you got your data just there, up to date... no need to reconstruct with some data attribute... no need for jQuery create dom or read value or wire update event.... saves a lot! like doing WPF the WinForm way (use event on each property change and create control manually when needed) (this is jQuery) versus doing it the MVVM way...

                          My programming get away... The Blog... DirectX for WinRT/C# since 2013! Taking over the world since 1371!

                          1 Reply Last reply
                          0
                          • S Super Lloyd

                            Because this is so... subjective!!! Right now at work some people hates me because I routinely replace 20 lines of jQuery (allegedly simple) with 1 Knockout statement (allegedly complicated). [Edit] to make it clear, I am NOT rewriting any existing code. I am talking of new code, which I prefer to write with a short and side effect free knockout statement instead of the (usual) pile of jQuery event and DOM creation method. Hey it's true, they look at it dumbfounded and say "it's unmaintainable" so the average programmer can't fix it, indeed! Now I am in a quandary, I convinced the client to implement a quite dynamic almost SPA couple of pages, with almost 1000 lines of TypeScript and 600 lines of HTML and knockout (with binding and template). To make it "more simple" I will have to balloon the code size to I dunno how much and spend zillion of hours debugging jQuery event handling and DOM creation spaghetti!!! :mad: (To the point, I don't think I can make it with just jQuery, I have to give up.... it's more dynamic than Facebook for god sake! maybe I exaggerate, but I like to think so! ;P) Well this is the maintenance team which complains about it, my project manager says to forget about it and continue using knockout when appropriate (which my team mates are slowly starting to love too) Now I get sprouted some vague insult... awful code.. you are so selfish and pretentious... why can't you follow KISS and SOLID principle insult every now and then! Very tiresome! While there is no more deaf than those that don't want to listen and I know it's a lost cause.. I still wonder about it... What I sell to the customer, is not just humanely doable in a reasonable time frame with just jQuery. Yet using Knockout I make it... "excessively complex" for some... (other developer) Mmmm... just wondering what to think of it... [EDIT2] I guess I am looking for a nice repartee to use in the conversation. Which is both convincing and easy to understand! ;P Something like they sprout me SOLID, KISS, I coolly reply this is way more KISS than your KISS version! (which I can't say, because their mere ignorance is proof that my code is not KISS :~ ) [Edit3] To give you an illustration, some people were confused when I started to use lambda expression... (or maybe generic?) (I think I started to get a bad rep for overengineering when I was using these strange things)

                            My programming get away... The Blog...[](</x-turndown)

                            K Offline
                            K Offline
                            KP Lee
                            wrote on last edited by
                            #58

                            They say beauty is in the eye of the beholder. I'd say KISS is in the same eye. When you first encounter it, a lambda expression is anything BUT simple. I can see how, as you become more familiar with it, lambda can become beautiful. I'm not there yet, maybe I'm too old a dog. The simpler the code, the less likely to be buggy. So, a lambda statement should be less buggy. Handing it to someone who doesn't know lambda to maintain is a recipe for disaster. Right now I'm reading 14 page printouts of SQL code without a single line of documentation on what it is trying to do, several to provide data to it, but no documentation on what it should return and it is all self-contained string manipulation. I think I'd rather be struggling with 80 characters of non-understandable code.

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups