Ask DN: What is the most confusing aspect of development/programming to you as a designer?

7 years ago from , Director of Technology, Whiteboard, host of Developer Tea

As a developer, I'm searching for topics to share my knowledge about with people who need it the most.

The designer community is a really interesting set of individuals that I would love to write to.

I'd like to know, from DN, what concepts about programming, big or small, are confusing or still cloudy to you? This includes development for any platform.

Secondarily, if you could learn more about a particular subject related to development, what would you want to learn about?


  • Mark Michon, 7 years ago

    Practical object oriented programming. It seems like many beginners learn the basics, but actually putting it into use on a realistic project that isn't person = new Person() tends to be difficult from my experience.

    8 points
  • Jonathan Cutrell, 7 years ago (edited 7 years ago )

    Great answers from everyone! Very glad there's a pretty clear direction, which really is summed up as:

    I want to solve problems as a developer would, and understand the correct way to write the code rather than taking code from a boilerplate or tutorial.

    There's some really good insight here.

    6 points
    • Aaron GrandoAaron Grando, 7 years ago

      That's a great goal, but...

      This is a reminder that the self-sufficient super-coder is a myth.

      Boilerplates and tutorials exist because they help you write code. Even in my senior-level coding position, I'm still constantly referring to tutorials and examples online. There's no shame in not hand-coding every line of your app. The crazy amount of quality work we do today is only possible because we are able to take advantage of the work that others put out there for us.

      1 point
      • Jonathan Cutrell, 7 years ago

        Totally agree. I think the spirit here is, "If given a situation where someone said, solve this problem, I want the skills to be able to solve that problem without having to rely primarily on Google-scrounging."

        0 points
  • Art VandelayArt Vandelay, 7 years ago

    I think the biggest gap to fill is actually figuring out how to approach a problem or "learning" to think like a developer. Doing a tutorial to learn about jQuery toggle() method is one thing, but learning how to approach a problem that may utilize is one thing.

    While I consider myself learning a bit more on the dev side, I still find this problematic when trying to dig deeper into JS or learning a new language.

    4 points
  • Ryan Hicks, 7 years ago (edited 7 years ago )

    I have trouble with the concept of going from visual to theory and logic for writing code. Always have and probably always will. It's just the way my brain is wired. I write very little html/css and i most def. can not seem to grasp Jquery/Java/JavaScript/etc. I can understand what code is doing and I can most times look at it and tell you what it is performing. But sitting down and translating my design concepts into that code is where i struggle.

    3 points
  • Christian Krammer, 7 years ago

    I always struggled with object-oriented programming in JavaScript, until I read these two tutorials: http://learn.jquery.com/code-organization/concepts/ and http://rmurphey.com/blog/2009/10/15/using-objects-to-organize-your-code/. Now it's much more obvious to me, what OOP is and how to actually employ it.

    So, more about OOP would be good. And generally the mindset of a programmer, how to approach problems, how to solve them. I mostly frontend-designer, but did also much jQuery recently, but still struggle with advanced concepts.

    2 points
  • Cody IddingsCody Iddings, 7 years ago

    I don't know where to begin with the goals that I have! If I want to learn Swift, what are the routes that I need to take to learn it correctly? Do I learn Javascript and Obj-C?

    1 point
    • Patrik GothePatrik Gothe, 7 years ago

      Swift is actually more similar to javascript than objective c in many ways, (much easier to learn). It's cocoa that stayed the same in that transition.

      Where most find struggles in iOS is probably in setting up a good MVC and figuring out how apple wants you to interact with their components.

      0 points
  • Cole TownsendCole Townsend, 7 years ago

    Workflow. Getting some sort of consistent scaffolding set up with gulp and asset pipelining blows my mind.

    1 point
  • Ryan GloverRyan Glover, 7 years ago

    Rules/pseudo rules.

    I'm kind of a hippie when it comes to putting stuff together and tend to worry less about the process as much as the result. I've noticed that with pure developers, process is very important if not sacred (not a bad thing, just different mindset).

    1 point
  • Eliot SlevinEliot Slevin, 7 years ago

    I have been trying to learn iOS development for a while now, and i'm not picking it up as fast as other things i've learnt. I watch tutorials, fill out the code, but I feel like I learn nothing. If i go to try make something myself, it's like where do I even start.

    1 point
  • Evan RileyEvan Riley, 7 years ago

    I know the programming language itself, that wasn't the hard part. I spent the better part of this summer learning Ruby(on Rails), Golang, and nodejs, and then trying to figure out MVC/MVVM and realized I don't know how to build the application itself, I don't know what it is, but I have trouble figuring out which code goes where, the stuff out there now is great for learning the language itself, but for me its putting that language to use. Maybe its just not clicking for me, but that tends to be the problem I have.

    1 point
    • Ian GoodeIan Goode, 7 years ago (edited 7 years ago )

      The only way you can learn that is to actually make a project and learn in a project-based environment.

      Treehouse used to do free student plans, they may still do, and most of their courses are centered around projects. So you'll learn fundamental parts of the language while also learning how they can be used to actually build something.

      0 points
  • Bardan Gauchan, 7 years ago (edited 7 years ago )

    For me, it's the everything else that revolves around programming that is the most confusing and frustrating part. For example, in the last few years I've given up few times trying to setup a RoR environment. For the few times I've succeeded, then I've failed to deploy it to Heroku or other servers properly. Other times I've messed up the gems or the database connections.

    So it's not the programming per se (which I grasp pretty easily). It's just the process of going from an idea that you want to build to seeing it working/live is very hard for me. I wish using Ruby, Python, NodeJS, etc. were all as simple as PHP with MAMP.

    0 points
    • Paul DessertPaul Dessert, 7 years ago

      Why not just use PHP and MAMP? I'm genuinely interested in knowing your thought process. I keep seeing this same line of thought. It's almost like people are trying to over complicate the situation.

      Why is RoR/Node/whatever deployed on Heroku the ideal environment and work flow?

      Again, I'm not trolling, I'm genuinely interested...

      0 points
  • Rafe GoldbergRafe Goldberg, 7 years ago

    Particularly confusing to me are code patterns, common conceptual organizational structures. For example I still can not fully understand the logic being or best ways to make use of jQuery plugins!

    0 points
  • Jodi WarrenJodi Warren, 7 years ago

    Node.js callbacks are currently wrinkling my brain. I have a few side-projects that I'm 95% done with, but for the async stuff.

    0 points
  • Mitch De CastroMitch De Castro, 7 years ago

    I know I've got plenty of basic stuff to learn but, what I can't really understand is the whole process of slicing images from a design in Photoshop/Sketch and then having the developers write all of the code based off of the sliced images. It's still a mystery to me.

    I've been looking for some more in-depth explanation about slicing and coding up a design but I can't find any resources that explain that process in its entirety.

    0 points
    • mewo a, 7 years ago

      I think maybe you're struggling because you're focusing too much on that particular process. Focus on learning html/css and responsive design. You will eventually be able to put together how a photoshop or sketch comp will translate to markup in your head, how it will scale and which parts you need to slice out as images.

      1 point
      • Mitch De CastroMitch De Castro, 7 years ago

        So on the developer's side, it's just a matter of figuring out things like the size of the navbar or what color a button is and then coding it all up?

        I always assumed it was more complex than that, haha.

        0 points
        • mewo a, 7 years ago

          More or less, yeah. The term slicing isn't all that relevant anymore.

          A few years ago when we were still using images for everything on the web (like buttons, backgrounds, textures) the process of translating the design from PSD to HTML was a lot more involved and precise, requiring you to have some skills in slicing up a design perfectly. Now that we can replicate all of this in CSS, the comp is treated more as a blueprint than production artwork, you can easily resize things in CSS if you get it wrong without needing to re-slice a whole comp.

          tldr; just learn HTML & CSS well and you'll be able to translate your comps easily.

          3 points
  • Nice ShoesNice Shoes, 7 years ago

    Recently got my head around gzip-ing. Cache enabling and general speeding up website.

    Learning sass and grunt at the moment. Still a jquery novice.

    0 points