Alice 2020-11-24 02:05
Really not sure of the format, but it might be an idea to have some learning modules that people can complete and get “experience points” on. These could be displayed with some sort of badge...kinda like Khan Academy. Would help people develop their programming skills and also help others give appropriate solutions based on how advanced a programmer you are.
Would be nice to have a basic course that outlines each command...like the manual but with more substance...and also some selected concepts that have been developed by users.
I think many people have ideas but sometimes don’t know how to implement them. I’m still learning and this would be a resource I would find useful instead of digging through other, not always related, BASIC material. There’s enough cohesion to the language for it to be more mainstream (especially when we get those consoles and programmable cartridges...hint, hint).
Just an idea.
qwaffe 2020-11-24 03:11
It goes away from the "feel" of NX imo. I think one of the main selling points of NX is the freedom to do whatever you want without definite guides. the forum is also very free for anyone to answer questions or make tutorials. if you want to know something, it is always open.
an app that follows through a course just feels like a different app for me. of course, it would be helpful for the basics. but for the gimmicks or more difficult stuff like making a sprite buffer, i think its much better to learn naturally and through others' code.
Alice 2020-11-24 03:17
I guess I wasn’t clear...not change the app...just have a learning icon in this forum...just seems like we could have something organized. I’m thinking more of the long-term growth of the app. Widen the audience...not just existing people with a background in programming, but also people interested in learning. Not sure how having additional learning material could “harm” the feel of the app.
qwaffe 2020-11-24 03:34
the structured feel of a basic course is just a bit foreign with how much freedom is given in nx, at least for me. but it will indeed help. im kind of nitpicky about the matter.
its not just the learning issue thats part of why the audience isnt widening, though. i think exposure is still important. and no matter how much we would get more learning material there is really only some who will strive to learn and continue to be interested after learning the basics.
Alice 2020-11-24 03:48
I agree it’s not the “just” the learning issue...I’m just thinking of the audience interested in learning. No reason why NX clubs can’t be created in actual physical places. I plan on looking into that when I get back. I have a large space that will be used for community events and the town has a computer gaming club so a programming club could work. Lot’s of old and young geeks out there that just want to sit, drink coffee and program stuff. Once a week for official meetings and open all the time anyways if they just want to come in. Coffee is planned to be free.
I just think there really is a market for retro 8-bit stuff. Some people are tired of the new tech and just want old tech that works.
...again...just my opinion.
qwaffe 2020-11-24 03:52 (Edited)
there is really a market for retro 8 bit stuff, but not so much a market for programming them, sadly. a programming club would be cool, but even then its kind of niche to meet together and just program as programming as hobby is pretty much internet-based. at this rate the best we can do is stay here till more people become interested in nx and what it provides.
but back to the topic: it would definitely take time and effort to make a learning tab. i dont think its priority right now too... its up to the community.
was8bit 2020-11-24 06:56
I have made and posted a few things already...
I think EXAMPLES, ASSETS, are asufficient for people who are comfortable,with basic styled programming, and want to explore the more NX specific things...
For those needing help with basic programming, these boards here, are a great place to get help :)
was8bit 2020-11-24 07:05 (Edited)
Myself, I enjoy pushing the boundaries beyond the intended design...
as an example, i like the idea of using the BG data as the game date, and eliminate arrays entirely ... in original lowres which was pixel based, i often relied on an existing pixel color to help determine what the program should do... for NX, the contents of the cells have existing data, already arranged in an array format... the challenge is how to maximize this potential..
one trick i use is BG 0 holds what you see, and BG 1 holds the current status, or levels, of whatever is visibly above.. so an ore storage building is seen on top, and the value in the bg below holds the current quantity of ore stored there...
This would make for a dynmic array, in that the top bg 0 can hold over 100 different types of things, like terrain, buildings, vehicles, etc, and data for whatever item for that thing is stored below in the lower bg 1....
was8bit 2020-11-24 07:15
I have tried with people i know in "real life" to get them interested, and so far only got a few "nibbles" but not one was interested long term... making or playing... :/
was8bit 2020-11-24 07:16
Having said that, i enjoy the community here :)
qwaffe 2020-11-24 07:28
using the working ram also works well.
Alice 2020-11-24 13:00
Thanks for the info guys...heading back to Canada tomorrow morning. Takes about 1 day to get there. I’ll be back online after that.
qwaffe 2020-11-24 14:07
keep safe and cya
Alice 2020-11-25 00:59
Just re~read your BG idea for data storage. I like that idea...good thinking. I’m definitely more a logic guy than a speed guy. I’d rather have a more logically complex game than sacrifice for graphics. For me, if there’s room for graphics...they can be added. With new technology and graphics cards it’s less of a problem...but much more complex to code. I guess for me if the content is good, I’m not so picky about graphics. That’s what imagination is for. Lots of games with great graphics but no content...or superficial content. I also like games that have logic that can handle data that you can change later...like different types of items, rooms, monsters etc. (yes...rpg guy). I should be able to fit my story in the program...not reprogram the game every time I want to change something in the story. I spend a lot of time on data structures and planning small routines that do specific things that are reusable...then the game seems to just go together smoothly.
was8bit 2020-11-25 05:14
I still own a working intellivision system, with utopia, one of the earliest strategy games, and one i love to play :) CRAPPY graphics, but hard to beat ;)
Also, intellisvisions dNd treasure of tarmin, my 3d pacman game is me working out the 3d environment... still not 100% ready for my version of TofT but i am geting very close :)
I also have a few colony games that kinda grounded out of acceptable ideas... so one day i will pick that back up too... it relied heavily on my "background as an array" idea :)
Timo 2020-11-26 19:04
I don't have plans to add new learning mechanics to the website. I don't want the website getting more complex than the app ;)
Ok, here is my opinion: There are lots of apps and websites which let you make simple games and they are focused on learning and they probably do it very well. The focus of LowRes NX was not to make it easy to learn, but to be like old hardware with an old programming language. Yes, in the marketing description I wrote it's easy to learn, but hey, it's just marketing ;) For the basics it might be true, but the whole graphics system is really not easy to understand. It's cool for retro fans, but why should anyone not interested in retro have to learn how old consoles worked. Modern systems work completely different. The same for the language. It's fun to find out how you can do more complex things in BASIC, but actually you learn bad coding style with it.
Now we have the official manual. It shows the first steps with all the specialties of LowRes NX. And it's a reference for the language. This is meant for people with prior experience in programming. Then we have a simple BASIC tutorial here in the forum.
As it was already said: Writing more tutorials is a lot of work and I'm already working on other projects. But if some of you wants to write more, I could add them here on the Help tab. But it would be nice if they would be about things helpful for most of the people, not too specific things. And they should do things the recommended LowRes NX way, without hacking it ;) I don't want to scare people :)
nathanielbabiak 2020-12-05 05:01
I'm happy to do some write-ups. What topics would be useful?
Alice 2020-12-15 16:08
In reference to learning “bad coding style”. I agree that if you are programming in Swift using BASIC coding style would be “bad”...and probably get you fired. However, if you are programming in BASIC...there are good coding styles and bad coding styles. The idea is to have good BASIC programmers coding in BASIC. They will have very different coding habits than a Swift programmer.
It’s also important to explain why a certain “style” is good...not just say...”do it this way because that’s how it’s done”.
Maybe a good place to start would be to agree on a “style” that can be used as a basis to be used for code that is used as “teaching” code. That will create some consistency in what we can direct people to for instruction. Everybody could weigh in on “style” rules and we could adopt a style as an official “teaching” style.
- How and what to comment in code.
- What needs to be included in the comments
- Variable naming conventions arrays, single value variables, temporary variables, variables in subs./functions, global variables, Naming constants and ‘magic numbers’.
- Positioning of data, subs, etc in code
- ...and other similar rules.
Once we have a style established we can start collecting and categorizing teaching programs and building a library of educational code that can teach concepts. We can look at concepts and break them down in parts to make simple programs that lead up to the more complicated concept...like prerequisites to learning. This would give a path to learning a concept if ever you look at a concept and decide that it’s too complicated to just pick-up and use.
As for Timo...I understand this is more work than you have time for. At this point I don’t think any changes need to be made to anything. In the future...just need to delegate someone to look at the “teaching programs” and decide if they could be included in the topic listing with a link under a title and description. That person would be the one updating the page with the links and descriptions. All delegated out to someone or a few people working together.
Wouldn’t need anything more than one page with access to updating for the person in charge.
...just an idea.