• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Devaka Cooray
  • Campbell Ritchie
  • Tim Cooke
  • Ron McLeod
  • Liutauras Vilda
Sheriffs:
  • Junilu Lacar
  • paul wheaton
  • Paul Clapham
Saloon Keepers:
  • Piet Souris
Bartenders:

Programming

 
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello

I’m an apprentice in my second year, and I have a problem when it comes to coming up with solutions while programming. I’ve become very dependent on existing solutions and how others have done it, instead of figuring it out myself. I rarely come up with my own approaches.
Before I started using AI, I could create almost anything within minutes. Now, I often don’t even know which variables I need. When I understand something and have done it a few times, I tend to stop because repetition quickly bores me. I know repetition is the foundation of learning, but I still lose interest very fast.
Do you know how I can approach this problem or at least make it easier to deal with?

Kind Regards,
Vijiyarathan Rithush
 
Marshal
Posts: 6283
507
IntelliJ IDE Python TypeScript Java Linux
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello,

Welcome to Software Engineering!!  

I'm sort of joking, but this sounds quite a lot like my experience still after doing this for a job for nearly 20 years. There are very few things that I do that are truly unsolved problems so the natural and very valid approach is to seek out somebody else's solution and use it. It's of no value being the hero and solving something yourself when you don't need to, in fact your employer will probably be quite unhappy with you for it.

On AI, I have a relationship with it based on caution and scepticism. It presents solutions that look good superficially but rarely are good and often require considerable rework, sometimes more rework that I'd have expended just doing it myself from the start.

In summary: Don't be disheartened by how you feel, many people feel that way myself included. Embrace the uncertainty and do it anyway.
 
Marshal
Posts: 9070
670
Mac OS X Spring VI Editor BSD Java
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Tim Cooke wrote:On AI, I have a relationship with it based on caution and scepticism. It presents solutions that look good superficially but rarely are good and often require considerable rework, sometimes more rework that I'd have expended just doing it myself from the start.


I'm with Tim on this. We even had a face to face chat when we met few months back about AI and how it shapes the industry. While you could see some value it brings, but it also brings a lot of problems you spelt out already, and future problems we are just about to see later.

One of those problems is, engineers, or rather those who are meant to become engineers (think students or junior developers), becoming so reliant on AI, that is the only thing they know and blindly follow. Instead of thinking and researching (for hours) and coming up with some sort of approach in mind, and only then asking for certain help to get there, they instead asking "how can I do it?". And now, you may see the way "how" to do it, but the next time you come to a problem, what's the first instinct? Let's ask AI, because it told last time.

If I'd compare it to a problem, i.e. you need to cross the city. You could jump on an underground train and get from East to West in under an hour, or you could jump on a bicycle and do the same, surely it will take much much longer. However, you can imagine how much you'd learn about the city while you cycling, its streets, road conditions, traffic it has, density of the people, variety of shops around, ALL SORTS OF THINGS you don't need to know IF ALL you had to do is to cross the city, BUT, do you see how much knowledge you would have built that way? So the next time someone asks to solve a problem how to build a road to cross the city from East to West - you'd know where to start, you'd have something in your head, called knowledge/experience.

And to obtain such experience ^ there are no shortcuts as to just build it in think habitual, old school way. At least I don't know currently. Maybe in N years the abstraction layer will get lifted, and writing code and solving problems the way we solve today won't matter, I don't know, but what I see and experience myself from the surroundings, AI just dulls the natural engineering senses.

So, try to balance. It is really so fun to think and sleep on a problem until you finally get a crack. You don't need to rush things.

 
Tim Cooke
Marshal
Posts: 6283
507
IntelliJ IDE Python TypeScript Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
If you want to practice your programming skills in a zero risk, and hopefully fun, environment then please do join us for our annual go at the Advent of Code. We have a CodeRanch leaderboard that you are welcome to join. Head over to the Intro to Advent of Code topic to get started.

Hopefully see you there.
 
reply
    Bookmark Topic Watch Topic
  • New Topic