How did you learn web development?

9 Likes

Nothing is more permanent than a temporary solution :smile:

7 Likes

Syntax highlighting!! What should the default colors be?

I wound up not using CodeMirror or another library; since I’d already written a tokenizer, I figured I was halfway there anyways. I’ll probably learn to do it with a library later on for the better features, but I wanna focus on the board next!

9 Likes

Would any of y’all happen to know why in the SGF specification, the property type “move” includes things other than B and W? Specifically all the annotations like BM and TE.
I also wonder why so many properties have the property type ‘-’ instead of something like ‘nodeAnnotation’.

This wasn’t something that bothered me before, but now that I’m trying to meaningfully categorize every element for the sake of syntax highlighting, I’m trying to figure out whether I should follow this part of the specification or just ignore it.

If a node has a B or W property, it may also have zero or one (EDIT: only one of these should be used, as they are mutually exclusive) move annotation properties (BM, DO, IT, or TE), but these are optional and rarely used. I haven’t seen any SGF files (in the wild) that use them. Note that these properties would appear alongside the move, like this:

(;FF[4]C[a contrived two move SGF for the sake of illustration]
;B[ee]IT[]C[Black opening at the 5-5 point is an unusual but interesting move]
;W[ss]BM[2]C[White playing their first move at the 1-1 point is nonsensically bad])

I think the BM, DO, IT, and TE are kind of analogous to the ??/?, ?!, !?, !/!! marks used to annotate moves in Chess games.

Having no special property type (denoted by -) is like the default and places no specific restrictions about where these properties may appear in an SGF file.

3 Likes

I suppose sgf is supposed to work for games other than Go also right?

2 Likes

I spent the hole day (plus a couple of hours yesterday) trying to fix one bug. Today I even had help of a colleague. Finally I believe that I maybe fixed it, although I still don’t understand what is the root cause, and the fix is not pretty …

7 Likes

What’s crazy is how much of the world’s critical infrastructure is patched together just like that

7 Likes

Web development is the worst part of programming.

10 years ago I thought that I think so just because I’m a web developer, and programmers are known to hate what they do. So I learned mobile dev, game dev, bigdata. I realized I was wrong.

Web dev is only the 2nd worst. Worst kind of programming is mobile dev (but by a very small margin)

4 Likes

While I was angrily fighting against CSS earlier this week, I wrote this:

some say webdev is bad b/c css
some say b/c browsers
from what i’ve tasted of JS
i hold w/ those who favor css
but if it were so awful twice
i think i know enough of hate
to say that for hateableness, browsers
are also great
and would suffice
- something robert frost said about webdev probably idk

7 Likes

One of my favourite poems :heart:

1 Like

I had said I wanted to work on the Goban graphics next, but I got really really fixated on making the textarea look like a real text editor this past week :joy:

Also the way I was doing syntax highlighting before was bad, since it would get really slow with long files. I don’t think the new one will have the same issue, but I’ll have to rethink how I do syntax highlighting before I can reimplement that.

In conclusion: i have learned so much about CSS by working on this textarea styling, but the main thing i learned is that i do NOT understand CSS at all :see_no_evil:

7 Likes

Wow that seriously looks like a terminal. Does it support vi key bindings? :grin:

6 Likes

Haha thanks!! Although it was pretty inspired by VSCode, since that’s what I’m familiar with

Not yet, but it will soon!! That’s one of the main things I’d like to add after I get the Go board looking prettier, fix a couple bugs, and re-implement syntax highlighting.

Or something like vi key bindings, anyway :thinking: I was thinking that since this is specifically for editing game files, there might be a more efficient and simpler list of keybindings to use - think navigating by nodes, variations, and other SGF-specific things. I’m not exactly sure what that might be though, but I’m sure gonna have fun playing around with it! And I’m open to suggestions of course :see_no_evil:

7 Likes

Suggestiond may vary a lot according to your interest

For graphic you may try 3d with a multiple rotation board?

1 Like

3d sounds like it might be a long-shot for me right now, but I’m interested. What do you mean by multiple rotations? Like, you can view it from Black’s perspective or from White’s?

1 Like

I wonder which has a steeper learning curve, vi or Go :sweat_smile:

3 Likes

Like you look at it from any point of view

1 Like

I’m actually surprised OGS doesn’t have this feature yet.

3 Likes

I dunno. Maybe too nice for OGS? I saw once a playable virtual board like this, looking really good.

1 Like