In this exciting time, let us pause to celebrate our growth as programmers

I’ve been doing Inform 7 stuff for… two years, perhaps? Along the way, there have been things that I thought I’d never really get… but finally got!

Using most/more/all of the action processing sequence has definitely been one of those high points.
Tables, later, were something I thought I’d always just copy/paste from other places.
But a new career high occured this morning:

curiosity relates one thing (called the fascination) to one person.
the verb to interest implies the curiosity relation.

the ball interests the player.
	
the description of the grue tank is "[if the grue tank interests the player]Curious![otherwise]At the moment, you only have eyes for the [fascination of the player]."

Oh, my goodness. I can’t count how many times I’ve stared at the relations chapter of the docs, almost to the point of drooling on myself. I’ve always said that I’d find another way. I can’t believe this works!

I know, it might seem kind of basic, but wow

But enough about me! What are some moments in your tech journey where you picked up a new skill or trick, something that maybe you never thought you’d catch onto?

19 Likes

It took me wayyyyyyy too long to understand the nuances of property declarations in TADS 3, because I had carried a lot of assumptions with me from other coding languages. I also learned what separate compilation was a few days ago, despite coding for almost two decades.

We are always learning, no matter what we already know.

13 Likes

very true!

5 Likes

I think when I started messing around with the Interface on Twine last year. I had been in awe of people being able to make fancy interfaces for their games (I even despaired a bit when using a template), and I never thought I could manage to make one myself. I could not manage to edit any styling past what was already on the screen (background, text colour…).

But something just clicked last summer (around the time I made my website on Neocities, messing around in HTML), and everything fell into place. Now, I can make bonker pages, with wayyyy too many elements on the page and unnecessary animations.

(I’m still fearing JavaScript though, but it’s slowly coming along).

15 Likes

Ah, very nice! I had so much trouble with my own game site… After that experience, I have a new respect for the skill involved

6 Likes

Back in 2017, Harlowe Twine taught me how to code in a more digestible way than all my Python, C++, Javascript tutorials et al. I learned to format CSS because I wanted to figure out custom stylings…for my game. I learned how to use for loops and switch statements…for my game. So on and so on.

Now I have a professional coding job.

13 Likes

That doesn’t sound basic at all! Relations are similarly my Inform white whale, so major kudos on using them.

I have to say, trying to answer folks’ questions on the board here has done a ton to push me out of comfort zone and get me to figure out new things.

8 Likes

I didn’t have huge aspirations when it came to working in Twine- though I had decided I would be happy if I could make things pink, since it’s my favourite colour, and it makes me happy. (That’s why my life is suffused with the colour- my backpack, most of my clothes, waterbottle, notebooks, phone case, laptop case, pencil case, wallet, stuffed animals, and so on…)

I’m quite content with the fact that I have, indeed, been able to make things pink. Buttons, backgrounds, links, yippee!

Maybe one of these days I’ll figure out how to use variables in Twine. :wink:

10 Likes

For several years I never got to grips with how to lay out an HTML page properly. I always thought it was what others did much better than me. And so I’d copy scraps of CSS off the web and float things left and right without really knowing what I was doing.

More recently I got hold of CSS: the definitive guide and literally read it cover to cover. I’d recommend this book to everyone.

Now I draw my layouts from scratch and use grid and flex without skipping a beat. No need for Bootstrap or PureCSS!

I even laid out my first short story with HTML and CSS last year. I generated the PDF with WeasyPrint. I was able to align with all my editor’s requirements for flow and spacing, and the thing printed beautifully.

Having good resources for learning is very important. But the real enabler was changing my attitude towards the subject matter.

7 Likes

heh, necessity and all that. I had a big room with a lot of things and two actors. Initially there was a kind of value with 12 values that represented things, so I had a table that translated those values into nouns and… well, you know how things can get out of hand. Jim Aiken says things get to a point where properties (values in my case) are just too much, and that was too much.

I decided two things:

  1. I guess I have to figure out a relation
  2. There goes my petite mort qualification :joy_cat:
7 Likes

I’m learning how to use Inform6, after skipping it for like three decades because I thought I was not good at coding. Inform7 game me the possibility to create the first games and I thought that was my limit. But now, thanks to Punyinform and the possibility to release a game for the C64, I found out that I can code, even if I’ll never become “good” anyway.

9 Likes

I started learning Inform7 in bits and pieces since about a year ago. In my last WIP I was still doing the usual stuff… writing instead, before, and after rules to modify the default behavior so the game would do what I wanted it to do.

Then the Single Choice Jam came along and I really wanted to participate. First I started again in the traditional way: writing instead, before, and after rules etc. Then I went… no this is not going to work for me. I should try a different approach.

I re-read the chapters on actions and Jim Aikin’s book. And then I went: why don’t I just rip out all the standard verb handling I do not need anyway, causing a lot of headaches along the way in handling all the special cases. And then I created a new small set of verbs, tailored for my game. So now I had only Check, Carry out, and Report rules. And I stored the whole game logic in tables. Basically I created a little game engine within Inform7. That’s definitely something I would not have even tried until very recently.

But all this I could not have done without all the great help and advice I have received over the past months of all the kind people here on this very forum! I cannot thank you enough on helping me grow as an IF programmer.

9 Likes

I started doing HTML/JS when the internet started up and even got into database back-end stuff as time progressed. Then I switched careers and, more than 20 years later, I just started getting back into it in the last couple of years or so.

I think you are further ahead of me now… and I had a huge head start! What do you mean this HTML tag has been deprecated?! Why would I use a “flex box” when I can use table tags?! Who uses a phone to surf the internet?! :laughing:

I second learning the fundamentals and not relying on third-party libraries. In a lot of cases, they don’t make things easier because you always have to tweak things.

The one thing that keeps me engaged in learning to code are those “aha” moments. So satisfying. I like coding more than I like writing a story it seems. I really like that Twine exists for those with a little web page development background. :wink:

2 Likes

Of necessity: there’s always a different language, an updated spec, a new rev. On any given day the most important things you need to know, as a programmer, are the nuts and bolts of a specific language. But over the course of years the importance of that specific stuff is tiny compared to the importance of being able to acquire the same kind of expertise with new stuff. Because there’s always new stuff, and the new stuff inevitably becomes the old stuff and the old stuff becomes the deprecated stuff.

4 Likes

It occurred to me as I finished Gestures Towards Divinity that, despite being technically smaller in scale than either of my previous Inform efforts, it was significantly more complex. I used dozens of built in and homebrewed features that I never had before–I think the code contains more than three-quarters of the pre-defined phrases included in the recipe book. There’s a lot going on there!

9 Likes

Actually, I think I only used a relation for the first time in my WIP, and that’s after 13ish years of Inform-ing? But maybe I just never had a great use case, and didn’t know that until I did. So unfortunately it wasn’t as exciting for me as for @kamineko

My recent revelation hasn’t been in Inform, but with LUAU, Roblox’s scripting language. My nephew and I have been prodding at this game for a year. I’ve been doing the coding for it, first watching 20+ tutorial videos (starting from zero – I’ve never used LUA, let alone LUAU). Then a video on ‘How to program a Find The…’ game, mostly copying code but not fully understanding. Then doing stuff myself and half-understanding it.

During the past few weeks, my understanding of the whole language and my ability to write code that ran on the first try both went up exponentially, seemingly instantly. But of course I know it was the payoff for a year of on-off marinading and persistence. It was very exciting when it did happen.

-Wade

9 Likes

I’m glad the Marinade Technique gets a mention!

It’s hard to quantify but when I can’t get an hour’s peace at the computer, or space to play music, or any chance of taking photographs; just having the right YouTube on in the background feels like I’m inching forward nevertheless.

3 Likes