8 votes

What programming/technical projects have you been working on?

This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

3 comments

  1. Akir
    Link
    Learning Minecraft, surprisingly. My work has scheduled me without asking my availability to teach a pair of students the their next level of Python classes in a newer format that uses Minecraft...

    Learning Minecraft, surprisingly.

    My work has scheduled me without asking my availability to teach a pair of students the their next level of Python classes in a newer format that uses Minecraft Education Edition. I'm not really sure if I really like it or not. There are parts of it that have extremely rough edges, some of which I think are because of the company I'm working at, and others because of Minecraft Education Edition seems to be a not-so-great way to teach. I'm worried about having to wrestle the kids away from the game that I am literally putting them right in front of. There are a lot of really mixed incentives with the program, I think. I've played around with the lessons that Microsoft has made, and they are ... not rudimentary, exactly, but they show off the constraints. Every task they have you do is in a world and it seems like it's good because it makes logical sense, but then again you are programming a little robot to do things that if you weren't constrained would be so much easier for you to go out and do it yourself.

    But the curriculum I'm teaching is the more advanced stuff, for kids who have already learned these concepts that Microsoft's lessons have been teaching. And so what exactly is the point?

    I say this, but really, I think this might be helpful to these particular students because the thing that I find most of my students have a hard time with is being flexable in their thinking. Even if all they did were drawing with blocks, it's still going to need them to learn to think a little differently.

    The thing that's really bugging me, though, is that this uses the relatively new Python Notebook editor. The Notebook editor is just stupid.

    For one, the editor is just a web browser integrated into minecraft. It's not well integrated, either. You need to click on it before it will register any inputs, so if you want to, for instance, click on a piece of your code. you will have to open the editor with the "c" key, and then click somewhere in the editor before it will actually allow you to click on your code. To run any given piece of code, you will need to open the editor, click on it, then click a second time to actually run it. If you want to see the code in action, you can theoretically press escape to close the editor, but in reality your input is being captured by the browser so you will have to click on the "X" close window button - twice. So basically, everything feels like it's barely working because it doesn't actually do what you want to do the first time.

    Beyond that, there is almost zero advantage to using notebooks over a basic editor. For one thing, you cannot save your own projects. Officially, at least; the program tells you when you start a new project it will not save, but it's persisted every time in the world I've created. But even then, the actual usefulness is gimped. For one, you cannot write plain text anywhere. The only option you have is to write code. It seems like they are using the format to integrate lessons - that's how they do it in their example teaching worlds - but for the life of me I cannot find a way to write my own and include it in a world. It seems like you are supposed to be able to write rich text and insert gifs and images and even have multiple pages, but none of that functionality is exposed to the user. The only things I have found - by accident - were that you can press "a" when not in an editor and a new editor will appear somewhere, press "x" and some editor will be deleted, and sometimes pressing "z" will bring back an editor that was deleted. So basically, my only real option to teach my students is to be sitting next to them and walking through everything bit by bit.

    6 votes
  2. IsildursBane
    Link
    I have been learning how to read code in larger projects. Since my programming experience has only been in school, I have not had to take on a larger codebase that I need to modify and debug. The...

    I have been learning how to read code in larger projects. Since my programming experience has only been in school, I have not had to take on a larger codebase that I need to modify and debug. The project I am working on is a fork of someone's personal project, so code comments are minimal. So I have been slowly piecing together all the project libraries it is using and for which. I have a rough understanding of the overarching concepts, so now I am creating a flow chart of the different app pages and trying to figure out which methods are called and when.

    4 votes
  3. Raspcoffee
    Link
    Didn't realize that my previous comment was at the near end of the previous thread, and since it takes more effort than you'd think to change lyrics: enjoy. It's based on '2 days into college'....

    Didn't realize that my previous comment was at the near end of the previous thread, and since I wasted far too time during work it takes more effort than you'd think to change lyrics: enjoy. It's based on '2 days into college'. Gotta vent frustrations having to deal with a frontend you barely control.

    2 days into backend

    I'm two days into backend, and I'm three stories behind.
    There's this client, let's name them Client.
    They say it works just fine.
    But it doesn't really sit with me quite right.
    'Cause they don't see what things are really like.
    And I keep accidentally triggering a new set of functions in the middle of the night.

    I write the code tired, and I write the code with bloat
    And I didn't write the code that fired, but I'll just drink coffee cold.
    See I don't like hacking things but must make this function as I've been told.
    So I just write around and keep my head down
    And hope my career unfolds.

    And my seniors keep telling me that I'm coding so well
    I try to trust them honestly, I find it hard to tell
    If I need Copilot or I need Git
    To try a lot or just a bit
    To tell myself, I code the line in
    "It's fine, I'll just hack it all in"

    I tend to forget, my position here is quite young
    In a way this career of mine has only just begun
    And I've got time
    I've got time

    I'm two days into backend with a busy, busy mind
    That feature we call Frontend is an enemy of mine.
    My colleagues say I'm crazy say I took it way to far.
    'Cause the frontend passed it over as it doesn't take the JSON as part.

    I'm only two days into backend and my desk is now a mess.
    There's just so much that I want to build that I have not build yet.
    There's just so much I want to see and far too little developed.
    On my mind, it runs so further away, it's easy to forget.

    That to all end users it looks like I'm doing so well.
    I try to see it honestly, I hack it all to well.
    If I've code fully or there's something I omit.
    I need to sleep after each commit.
    They said "Push", I said "alright".
    I think I won't, I maybe might.
    I probably should just Fetch it slow.
    I'll name the branch well, but coffee that I know.

    The one thing that's important above everything else.
    Is to learn not to push before the code is tested well.
    I try believe it when I say
    If it's meant to work it'll work anyway
    I'll be true
    I've got time.
    I've got time.

    That's where I'm at, to be honest.
    Just two days
    Two days into backend.

    1 vote