Coding Challenge 172: Horizontal Directional Drilling

Поделиться
HTML-код
  • Опубликовано: 28 сен 2024

Комментарии • 155

  • @TheCodingTrain
    @TheCodingTrain  2 года назад +49

    Source code and references at the new coding train website! thecodingtrain.com/challenges/172-directional-boring
    And check out Practical Engineering's video! ruclips.net/video/JAhdb7dKQpU/видео.html

    • @tieflabs
      @tieflabs 2 года назад

      I love your videos, In 2020 i started codding too, well it's really fun, before i started i was an arduino programmer

  • @PracticalEngineeringChannel
    @PracticalEngineeringChannel 2 года назад +469

    Choo choo! This makes me so happy! Thanks for teaming up with me, Dan. I think it rivals other titles in the "mundane simulator" category. I can't stop playing it.

    • @devstreams1459
      @devstreams1459 2 года назад +12

      Got sent here by you, love this channel! Thanks for the recommendation!

    • @mastershooter64
      @mastershooter64 2 года назад +11

      Let's all team up (the coding train audience and practical engineering audience) and make a 3D game with triple A graphics and a much more detailed directional boring game! open source game so that everyone can contribute to it!

    • @willemkossen
      @willemkossen 2 года назад +3

      Great to see collabs between channels i already subscribe too. Well done!

    • @bananapi3784
      @bananapi3784 2 года назад +1

      Here from Practical Engineering

    • @TheCodingTrain
      @TheCodingTrain  2 года назад +25

      Thank you for the opportunity, this was such a treat to get to do!!

  • @karm65
    @karm65 2 года назад +115

    I ran one of these drill rigs for 10 years.15 yeas overall experence with them. the starting angle should be 10 to 22 degrees. it can be more but that creates problems and can gratly increase the length of the bore. fast rotation with slow push goes more or less state. push with no rotation is for steering. you should never change direction more than absolutely necessary usually 4 inches over 10 feet on avrage the drill stem can take more but odds are whatever your pulling back can't. you can only rotate most drill stem to the right (clockwise down hole) turning the other way will unscrew the drill string. some systems have ways to prevent this but they don't work very well IMO.

    • @TheCodingTrain
      @TheCodingTrain  2 года назад +25

      Thanks for this info and context!

    • @stevenlischer
      @stevenlischer 2 года назад +15

      I worked for a hdd company for a few years and verify this is accurate, the pullback radius and tension are usually the limiting factors. Real world boring software has to do some very interesting mutli-factor path optimization that actually can be approximated pretty well with A* path finding algorithms and energy minimizing smoothing algorithms to remove "squigglyness"

    • @g0d5m15t4k3
      @g0d5m15t4k3 2 года назад +4

      Oh wow! I love when someone with hands on experience is here in the comments giving the protips.

    • @absalomdraconis
      @absalomdraconis 2 года назад

      @@stevenlischer : I had suspected the pulling would be a problem when I saw the initial video on it. I'd suspect the "flexible robots"/"pneumatic robots" folks could improve on that restriction.

  • @anj000
    @anj000 2 года назад +17

    I love both Practical Engineering and Coding Train. This colab is match made in heaven.

  • @tomaszmarczak9432
    @tomaszmarczak9432 2 года назад +29

    I'm just looking at videos from channels I subscribe and I started wondering if its Horizontal Directional Drilling month or something

    • @inhumanedasher
      @inhumanedasher 2 года назад +2

      Same.

    • @zokpls8712
      @zokpls8712 2 года назад +1

      Yeah wtf lmao

    • @joaqogc
      @joaqogc 2 года назад

      Same!

    • @TheCodingTrain
      @TheCodingTrain  2 года назад

      Is there another one besides this one and practical engineering?

    • @tomaszmarczak9432
      @tomaszmarczak9432 2 года назад +1

      @@TheCodingTrain No, but it looked like odd coincidence until you said that you collaborated ;)

  • @valuedhumanoid6574
    @valuedhumanoid6574 2 года назад +2

    Just down the road from me Comcast is drilling under an 8 lane intersection to install a new feeder to a new neighborhood. I actually stopped and asked questions about the project. The guy told me their going 26 feet down and 140 feet across. Not a huge project, but it's not disrupting traffic at all.

  • @Woryed
    @Woryed 2 года назад +1

    Been watching you for over 4 years now and i LOVE your videos!

  • @VisioGuy
    @VisioGuy 2 года назад +2

    This Superfriends Team-up is really inventive--a really great use of the internet! School curriculum designers take note! Also, FYI, I watch Coding Train more than Practical Engineering, but I actually watched the "boring video" first. :)

  • @BarneyCodes
    @BarneyCodes 2 года назад +1

    Love the concept, great video as always!

  • @chrismanning5232
    @chrismanning5232 2 года назад +8

    If we're never using the path history beyond drawing it, we could just bake it onto the image and not have an ever-expanding (memory-chomping) path array.

  • @RicoGalassi
    @RicoGalassi 2 года назад

    😂😂I saw the title and thumbnail and instantly thought you did a collab with practical engineering. Awesome video!

  • @realcygnus
    @realcygnus 2 года назад +1

    Nifty ! & I am quite familiar with Grady, he is awesome.

  • @OfficialMGMusic
    @OfficialMGMusic 2 года назад +2

    I thought this would be boring, but it turned to be very drilling.

  • @snork_games
    @snork_games 2 года назад

    A Practical Engineering crossover!?!?! The quantum superpositions that are my subscriptions are collapsing together.
    Which is funny, as wave function collapse was a recent video =P

  • @astk5214
    @astk5214 Год назад

    Love coding, love big building stuff

  • @LucasundAaron
    @LucasundAaron Год назад

    When you think a second about it and realize this is rocket steering.
    Nice source code to get my intercontinental going ;P

  • @onebridge7231
    @onebridge7231 2 года назад

    Sent by PE from the directional drilling video.!

  • @CollinRaves
    @CollinRaves Месяц назад

    Here from Practical Engineering!

  • @lucbloom
    @lucbloom Год назад

    How does HDD detect the position + direction of the bit? Does it also have sonar to estimate the formations ahead?
    I guess I should watch the video.
    A cool addition would be if you could hit a “sonar” button every 1 second that generates a wave that leaves behind a shroud of temporary “visibility” as it travels over the screen.
    Could also be auto-timed.

  • @berniezenis4876
    @berniezenis4876 2 года назад +1

    Horizontal Directional Drilling can be too slow in some instances. That is when SSD is used instead of HDD. More expensive but definitely faster, especially when you are drilling a single, long contiguous hole instead of a random bunch of small holes.

  • @Car_Ram_Rod
    @Car_Ram_Rod 2 года назад

    Here for the coding! Also, Practical Engineering sent me!

  • @thehappycoder3760
    @thehappycoder3760 2 года назад

    Brilliant who knew you could make a game out of that!

  • @DenisovichDev
    @DenisovichDev 2 года назад

    Awesome!

  • @SuperVeggieHero
    @SuperVeggieHero Год назад

    Can I suggest raising the laptop a bit? It might help with your ergonomics and it might also reduce the frequency of typos.. Thanks for these vids.

  • @frederickgivens9261
    @frederickgivens9261 2 года назад

    I've noticed a few times that you put stuff out and I think "idc" but then I come back later because it turns out iDOc and now I'm thinking, weird, I wonder why I'll need this in the near future

  • @rang3rj3sus94
    @rang3rj3sus94 2 года назад +1

    Does anyone have any suggestions on where to start learning to code? I want to have a career in programming but I don't know where to begin.

    • @andrewtc95
      @andrewtc95 2 года назад +1

      For me, Khan Academy was a great place to start. After that I'd recommend watching through some of the playlists by Coding Train and Dani Crossing.

    • @rang3rj3sus94
      @rang3rj3sus94 2 года назад

      @@andrewtc95 thank you, very much appreciated!

  • @bob_mosavo
    @bob_mosavo 2 года назад

    Cool channel!

  • @bob_mosavo
    @bob_mosavo 2 года назад

    Grady @Practical Engineering sent me 😁

  • @oop1761
    @oop1761 2 года назад

    Can you make a coding challenge where you try to make a barcode reader from scratch using the webcam?

    • @gownerjones
      @gownerjones Год назад

      That would be like a 4h coding challenge

  • @abobakeralmusari6363
    @abobakeralmusari6363 Год назад

    HOW TO CODE THE DIRECTIONAL DRILLING PROJECT IN OIL AND GAS

  • @tbgelectr0
    @tbgelectr0 Год назад

    This can be remade to a game and also use ML.

  • @johnnyserup5500
    @johnnyserup5500 2 года назад

    That could actually be a cool game :-)

  • @limboreversible
    @limboreversible 2 года назад

    I'm having a hard time implementing this code in processing . The array flexibility of p5.js is far bigger than in processing. Anyone has attempted this challenge in processing ? Thanks very much

    • @TheCodingTrain
      @TheCodingTrain  2 года назад +1

      Ah yes, this is really tricky! you'll want to investigate using an ArrayList.

    • @limboreversible
      @limboreversible 2 года назад

      @@TheCodingTrain thanks a lot !! It took me a while but cracked it !
      // add coordinates of moving object to arrray
      PVector loc;
      PVector dir;
      float bias = -1;
      ArrayList pathV;
      /////button
      int rectX, rectY; // Position of square button
      int rectSize = 30; // Diameter of rect
      color rectHighlight, circleHighlight;
      boolean rectOver = false;
      boolean circleOver = false;
      void setup() {
      size(700, 700);
      // dir = dir.fromAngle(PI/4); //initial "attack angle"
      dir = dir.fromAngle(PI/2);
      pathV = new ArrayList ();
      loc = new PVector (0, 0);
      rectX = width/2;
      rectY = 0+rectSize/2;
      }
      void drill() {
      pathV.add(new PVector(loc.x, loc.y));
      beginShape();
      noFill();
      strokeWeight(3);
      stroke(255, 0, 0);
      for (int i = 0; i < pathV.size(); i++) {
      vertex(pathV.get(i).x, pathV.get(i).y);
      }
      endShape();
      }
      void draw () {
      background(150);
      update();
      fill(0, 0, 144);
      noStroke();
      rect(rectX, rectY, rectSize, rectSize);
      drill();
      float angle = 0.01;
      dir.rotate(angle*bias);
      loc.add(dir);
      pushMatrix();
      strokeWeight(15);
      stroke(0, 255, 0);
      translate(loc.x, loc.y);
      rotate(dir.heading()+(PI/6)*bias);
      line(0, 0, 10, 0);
      popMatrix();
      }
      void mousePressed() {
      if (rectOver) {
      bias *= -1;
      }
      }
      void update() {
      if (overRect(rectX, rectY, rectSize, rectSize) ) {
      rectOver = true;
      } else {
      rectOver=false;
      }
      }
      boolean overRect(int x, int y, int width, int height) {
      if (mouseX >= x && mouseX = y && mouseY

    • @limboreversible
      @limboreversible 2 года назад

      Have no clue how efficient this is though

  • @bumburnchannel7699
    @bumburnchannel7699 2 года назад

    2m subscriber coming very soon!

  • @aianyoung
    @aianyoung 2 года назад

    Grady sent me!

  • @nolannoble6323
    @nolannoble6323 2 года назад

    3:42

  • @kwindafidler7728
    @kwindafidler7728 Год назад

    coming from overthere so u know

  • @cobaltbluesky2276
    @cobaltbluesky2276 2 года назад

    Me, geometry dash player: swing copter :)

  • @koribekconceicao9473
    @koribekconceicao9473 2 года назад

    progress. Now, two months later, I am editing for nice tutoet League teams and players, and making money off it. Keep your heads up and

  • @jesuslovesyoujohn314-21
    @jesuslovesyoujohn314-21 Год назад

    John 3:16 For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.
    Isaiah 53:6 All we like sheep have gone astray; we have turned every one to his own way; and the LORD hath laid on him the iniquity of us all.

  • @marcyanus1430
    @marcyanus1430 2 года назад

    Barefoot coder?

  • @Jkauppa
    @Jkauppa 2 года назад

    how boring

    • @Jkauppa
      @Jkauppa 2 года назад

      intentionally boring, so boring

  • @Quidoute
    @Quidoute 2 года назад

    Try //@ts-check to get errors in VScode before running the code

    • @CivilF11
      @CivilF11 2 года назад

      I don't think he generally uses typescript in his projects.

    • @Quidoute
      @Quidoute 2 года назад +1

      @@CivilF11 it works with javascript in VSCode trust me

  • @BPEKSupraInteractive
    @BPEKSupraInteractive 2 года назад +19

    Here from Practical Engineering! Glad he recommended us to you!

  • @pfmcdermott1
    @pfmcdermott1 2 года назад

    Grady sent me!

  • @Didactb
    @Didactb 2 года назад +29

    Practical engineering sent me here and I happen to be interested in coding so... I just subscribed! I'll check if you have any Python and SQL which are the ones I need to learn for my job :)

    • @TheCodingTrain
      @TheCodingTrain  2 года назад +4

      Unfortunately I'm almost all JavaScript and Java (and a lot of graphics and simulation) but feel free to poke around and let me know if you find anything interesting! There are lots of great python and more traditional web dev (database) channels around RUclips!

    • @letsgocamping88
      @letsgocamping88 2 года назад +5

      this channel is a great starter to get you thinking like a programmer

    • @mhjunky4278
      @mhjunky4278 2 года назад

      @@letsgocamping88 bruh he's so advance for me 🥲

  • @willemkossen
    @willemkossen 2 года назад +14

    Great to see a collab between two of my favourite youtube channels. Nice!

  • @Hermaniac8
    @Hermaniac8 2 года назад +41

    Hey Dan, just FYI, the red line on brown dirt was pretty difficult to distinguish with (my kind of) colour-blindness.
    May be worth considering avoiding this colour combination in future.
    💕

    • @MrNotAGamer
      @MrNotAGamer 2 года назад +2

      oh well that sucks

    • @TheCodingTrain
      @TheCodingTrain  2 года назад +37

      Thank you Michael for this feedback. I try to be mindful of accessibility when publishing videos and code examples and missed this one. I'll adjust the colors in the code example and keep this in mind for future p5 sketches. Thank you for taking the time to comment and letting me know!

  • @aditya95sriram
    @aditya95sriram 2 года назад +5

    The collab I didn't know I needed

  • @Linuxdirk
    @Linuxdirk 2 года назад +2

    This is the first *boring* video on this channel :D

  • @Mysda_
    @Mysda_ 2 года назад +7

    I love that drilling is actually turned into games. That's litteraly the concept of my current game

    • @jcbro86
      @jcbro86 2 года назад

      I’m a directional drill operator and would love to play some kind of drilling game.

    • @gownerjones
      @gownerjones Год назад +1

      @@jcbro86 I never knew there were people so passionate about drilling that they do it for a living AND want to pretend to do it in their free time. I'll make you a drilling game, jcbro, don't you worry.

  • @lukey666lukey
    @lukey666lukey 2 года назад +2

    practical engineering sent me here

  • @JohnWesleyDavison
    @JohnWesleyDavison 2 года назад +1

    I enjoyed this video, I thought it was boring. That's it, that's the hole pun.

  • @JordanMSeverns
    @JordanMSeverns 2 года назад +3

    You've been getting so much better at making your programs look good

  • @motbus3
    @motbus3 2 года назад +3

    hey this kind of colabs are exciting! people can learn to code and about something more! this is so cool!

  • @folkusonme
    @folkusonme 2 года назад +2

    oh yay!! gonna check out Grady's vid too

  • @PlasticBubbleCosplay
    @PlasticBubbleCosplay 2 года назад +2

    Can also be a top-down-view road-buikder or lawnmower with limited turning radius :-)

  • @glenneric1
    @glenneric1 2 года назад +2

    A directional drill is a small, slightly off camber drill, on the end of another drill. You can turn them each independently. Very cool. You drill with the end(little) drill while not drilling with the stage 1 drill and you end up making a curved path since the end drill has a small kink in it(out of alignment slightly). If you want to go straight you just start turning the main drill and the end drill just wallows out a little bit (since it is slightly wobbly) but still drills through your rock. So varying proportions of your main drill and end drill are how you steer.

  • @guidiasmacara9516
    @guidiasmacara9516 2 года назад +2

    Very cool, I feel like this is gonna boost my interest and practice in coding!

  • @weamers
    @weamers Год назад

    3:36 gave me a good chuckle, keep up the good work! 👍

  • @ranyhaerunisa
    @ranyhaerunisa 2 года назад

    Sir please translate Indonesia....I want to study too

  • @shainmohamed3022
    @shainmohamed3022 2 года назад +1

    Im learning about coding from your processing tutorials which was 6 years ago so im worried they might be out of date. so should i keep learning from them? Your content is amazing btw

  • @ChokyoDK
    @ChokyoDK Год назад +1

    You helped me through 3 years of programming classes.
    Thank you!

  • @theman7050
    @theman7050 2 года назад +1

    More p5!!! Yesssss

  • @godetarnaud1005
    @godetarnaud1005 2 года назад +1

    Awesome idea to team up with someone else and make a cool simulation of a real life phenomenon like this ! Thank you for this quality content I'll definitely try to do it on p5.js too :D

  • @shaileshrana7165
    @shaileshrana7165 2 года назад +1

    Good vid. Scoring rules would be interesting to decide

  • @walidbezoui
    @walidbezoui Год назад

    Can you explain stable diffusion used in image genaration !

  • @redpug5042
    @redpug5042 2 года назад

    Maybe do something where you are told distances to obstacles and you have to navigate that way

  • @mathewblanc9936
    @mathewblanc9936 2 года назад +1

    The team up we didn't know we needed!

  • @eugeniobarbieriviale2888
    @eugeniobarbieriviale2888 2 года назад

    Next challenge montecarlo method

  • @macrus7064
    @macrus7064 2 года назад

    I don’t wear shoes if I don’t have to either!

  • @MarcelaSLima-ck1ky
    @MarcelaSLima-ck1ky 2 года назад

    printf("Your videos are very nice!
    ");

  • @toastyPredicament
    @toastyPredicament 2 года назад

    Wanna throw a party for Tech Tips?

  • @TheEmpowerment1
    @TheEmpowerment1 Год назад

    This is so cool

  • @diegogutierrez5989
    @diegogutierrez5989 2 года назад

    Thanks

  • @jayd152
    @jayd152 2 года назад

    Practical engineering sent me here and happen to be interested in coding so... just subscribed! check if you have any Python, R, and SQL. But into coding generally

    • @TheCodingTrain
      @TheCodingTrain  2 года назад

      So glad to hear! Unfortunately I'm mostly JavaScript (p5) and Java (Processing) but if you search I have a lot of videos related to data, APIs, and ML (that crossover in topics for what many use Python and R for).

  • @slembcke
    @slembcke 2 года назад

    Hah! Fun. I've actually implemented part of a math library to be used for HDD. Lots of fun stuff with high performance collision detection and such for interactive path planning tools. It involved lots of jokes about "working on the boring project today", "Hope I don't get bored...", etc. :p

  • @twobob
    @twobob 2 года назад

    This looks like it might be the kind of thing an AI could have go at. one control input. maybe screen scraping. Red is Bad / Green = reward. perhaps optimise for pipe length over reward since circuitous solutions whilst fun would not be in the spirit of the challenge. Hugging face maybe? hmm

  • @youtubeuser206
    @youtubeuser206 2 года назад

    Does this p5 js have any professional applications, career wise? Or is it just for drawing MS paint style things

    • @gownerjones
      @gownerjones Год назад

      I'm a professional programmer and I used and use p5 a lot to practice in college. The drawing side of it is so easy and quick to understand that you can hardcore focus on the algorithms and the math you need to learn. Now that I have a job, I still come back to it to quickly try out new things. It's like doing puzzles, it keeps your brain sharp and since you're drawing things on screen, it's also fun.

  • @meesvandenberg9468
    @meesvandenberg9468 2 года назад

    This is not boring at all

    • @gownerjones
      @gownerjones Год назад

      No, it's a boring simulation.

  • @z3row0rm
    @z3row0rm 2 года назад

    Brady from practicing engineering sent me here

  • @x9rtu3os1t8
    @x9rtu3os1t8 2 года назад

    Amazing!!! Grady sent me.

  • @mhjunky4278
    @mhjunky4278 2 года назад

    Damn I got to thank Practical engineering for informing me of your channel ❤️
    I love this video and your energy/excitement when coding, I guess that's what happens when you know what you're doing.
    Definitely deserve a follow a person to look up to ❤️

  • @evanbelcher
    @evanbelcher Год назад

    Wow I'm incredibly late to this channel apparently, but this is so cool! You do an amazing job at speaking at a level that is approachable to beginners without being boring or insulting to professionals like me, and it seems like you're genuinely having fun!

  • @ViniciusNegrao_
    @ViniciusNegrao_ 2 года назад

    Man, I LOVE coding challenges, I love html canvas as well, so this seems like the perfect channel for me. Also you're very happy and entertaining :D

  • @SamuelHauptmannvanDam
    @SamuelHauptmannvanDam 2 года назад

    As a programmer, who unfortunately don't have the time to watch, it still warms my heart that you exist and we'll certainly be trying it out with my kid when they are old enough. Because you are the light of the world. So affectionate. Love it, love it, love it.

  • @bastederbeste
    @bastederbeste 2 года назад

    Roundabout sharks are always turning

  • @planktonfun1
    @planktonfun1 2 года назад

    simulation + engineering collab

  • @pritamdavis
    @pritamdavis 2 года назад

    Will try making 😃

  • @criscubillos
    @criscubillos 2 года назад

    I liked the theme but the video was too fast. Especially for those of us who do not speak English natively. I barely had time to look at some of the code.

    • @TheCodingTrain
      @TheCodingTrain  2 года назад

      Thanks for this feedback! I wonder if you might enjoy watching the full archive of the recording session? It's here: ruclips.net/video/_YrgCu4jxTk/видео.html

    • @criscubillos
      @criscubillos 2 года назад

      @@TheCodingTrain Of course!. The full video is like an "ASMR Engineer" for me.
      Thank you for your dedication, you are in my top 5 youtubers.

  • @andrewtc95
    @andrewtc95 2 года назад

    Great video. Now I want to try this for myself.

  • @Helloworld-lg6zm
    @Helloworld-lg6zm 2 года назад

    Practical engineering sent me here!

  • @eXpire163
    @eXpire163 2 года назад

    Nice cut showing the studio

  • @dyneek
    @dyneek 2 года назад

    Nice one

  • @nullpointer1755
    @nullpointer1755 2 года назад

    Love from Brazil ❤️!

  • @marcelcraig7477
    @marcelcraig7477 2 года назад

    i was sent by the big man him self

  • @TheSourLemonz
    @TheSourLemonz 2 года назад

    watched this live :3

  • @marianoviedo
    @marianoviedo 2 года назад

    Muy bueno el juego!!!

  • @artzified
    @artzified 2 года назад

    oh wow another video

  • @g0d5m15t4k3
    @g0d5m15t4k3 2 года назад

    I'm glad to learn about your channel from Practical Engineering. Yay! You gained a new subscriber :)