Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Ape Fist
Feb 23, 2007

Nowadays, you can do anything that you want; anal, oral, fisting, but you need to be wearing gloves, condoms, protection.
Honestly I've been doing "webdev" for like 10+ years my original degree was in Web Design so I guess you'd probably call me a UX Designer/Dev but over the years with the prevalence of responsive design and the mobile web officially overtaking the desktop web I've felt increasingly boxed in when it comes to being able to express my creativity.

The days when websites were also supposed to be pretty is, in my opinion, over and that has some upsides and downsides. But either way I've managed to actually chug along as a Freelancer for this long without actually seriously sitting down and learning a web standard programming language like JS, or PHP, I'm a loving wizard with CSS though. I've always been able to modify and read the code but would definitely have choked if I was asked to write anything from scratch plus I'm sooooo loving siiiick of chasing down invoices from indifferent clients and I'm sick of being designer, developer, QA, salesman, and customer support all rolled into one.

So I said gently caress it and enrolled in a proper development course at DIT in Ireland and I'm looking to move into at least a Jr Front End role with in Ireland's pretty loving strong tech sector. I've also got two little 9 month old dots so I've gotta chase that steady paycheck now. So I'm cramming the fuuuuuck out of PHP, JS, and some Angular, and React and I've learned more about programming in 4 months of intense study than I have in 10 years of UX Design. Having kids really loving jumpstarts the poo poo out of you.

Edit: I suppose once you grasp one C family language you've grasped the basics of all of them.

Ape Fist fucked around with this message at 22:14 on Dec 27, 2017

Adbot
ADBOT LOVES YOU

Capri Sun Tzu
Oct 24, 2017

by Reene

Ape Fist posted:

Honestly I've been doing "webdev" for like 10+ years my original degree was in Web Design so I guess you'd probably call me a UX Designer/Dev but over the years with the prevalence of responsive design and the mobile web officially overtaking the desktop web I've felt increasingly boxed in when it comes to being able to express my creativity.
Whatup CSS buddy :hfive:

I freelanced for a couple years, and it's a stressful way of making a living.

klen dool
May 7, 2007

Okay well me being wrong in some limited situations doesn't change my overall point.

Ape Fist posted:

Honestly I've been doing "webdev" for like 10+ years my original degree was in Web Design so I guess you'd probably call me a UX Designer/Dev but over the years with the prevalence of responsive design and the mobile web officially overtaking the desktop web I've felt increasingly boxed in when it comes to being able to express my creativity.

The days when websites were also supposed to be pretty is, in my opinion, over and that has some upsides and downsides. But either way I've managed to actually chug along as a Freelancer for this long without actually seriously sitting down and learning a web standard programming language like JS, or PHP, I'm a loving wizard with CSS though. I've always been able to modify and read the code but would definitely have choked if I was asked to write anything from scratch plus I'm sooooo loving siiiick of chasing down invoices from indifferent clients and I'm sick of being designer, developer, QA, salesman, and customer support all rolled into one.

So I said gently caress it and enrolled in a proper development course at DIT in Ireland and I'm looking to move into at least a Jr Front End role with in Ireland's pretty loving strong tech sector. I've also got two little 9 month old dots so I've gotta chase that steady paycheck now. So I'm cramming the fuuuuuck out of PHP, JS, and some Angular, and React and I've learned more about programming in 4 months of intense study than I have in 10 years of UX Design. Having kids really loving jumpstarts the poo poo out of you.

Edit: I suppose once you grasp one C family language you've grasped the basics of all of them.

I can't agree with your last sentence. You really need to know 2 or 3 languages from different paradigms before you can really grasp the basics of all of them. C and lisp / javascript and java would probably give you a good base with which to grasp other languages without to much trouble.
Things like lambda functions are common in lisp, and you end up using them often as a matter of course, but to do so in C is a pain in the arse since lisp wraps up all the annoying pointer and environment management for you that you'd have to do by hand. Conversely, pointers in C are common and you end up using them routinely but in java you never use pointers explicitly - IE no arithmetic on pointers. Java gives you OO but to do OO in C is a pain as well.

If you have some OO and some functional experience under your belt, javascript makes a lot more sense.

DICTATOR OF FUNK
Nov 6, 2007

aaaaaw yeeeeeah
Decided to try loving around with Electron by making a simple addon organizer for WoW since apparently the Curse one is all crapped up now.



Right now I'm working on nailing down final details (auto-updating, automatic dependency installation, automatic association of externally installed addons... the list goes on) but it's hard to stay motivated to finish now that it's far enough along to install and remove stuff, which was all I really wanted to begin with :v:

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.
How’s Electron working out for you? Easy to get something up and running?

Capri Sun Tzu
Oct 24, 2017

by Reene

DICTATOR OF FUNK posted:

Decided to try loving around with Electron by making a simple addon organizer for WoW since apparently the Curse one is all crapped up now.
I want this! The curse (now Twitch I guess) client is bloated as poo poo now.

taqueso
Mar 8, 2004


:911:
:wookie: :thermidor: :wookie:
:dehumanize:

:pirate::hf::tinfoil:

How much ram does it take? I always hear how electron apps are so hungry for ram, just curious how yours is doing. Especially since you probably haven't tried to optimize anything yet.

DICTATOR OF FUNK
Nov 6, 2007

aaaaaw yeeeeeah

pokeyman posted:

How’s Electron working out for you? Easy to get something up and running?

So far it's been great; very straightforward for building an SPA. Once you've got your window(s) set up (which boils down to an entrypoint JS file instructing the window to load a .html), it's virtually no different than building any other app with angular/react/jquery/whatever-the-gently caress on top of node, just with server-side niceties like filesystem access and no CORS (so I can rip description text off of pages, as seen above :v:). Adding things like notifications or menu items is trivial at worst.

As primarily a web dev, I can say with certainty it's gone a lot better than when I tried to use tcl/tk, and I like that it works cross-platform without literally any extra work. Something like WPF kind of makes it seem lame by comparison, but I think it's great for what it is.

taqueso posted:

How much ram does it take? I always hear how electron apps are so hungry for ram, just curious how yours is doing. Especially since you probably haven't tried to optimize anything yet.
Mine consumes very little by itself; maybe ~10-20MB at any given time. It's also almost entirely raw JS (this app was an experiment to get me away from jQuery too... next step is React :v:). No optimizations to speak of yet.

The bundled Chromium, however, likes to eat up ~50-80MB. Projects like Electrino are aiming to quell it a bit, but I personally haven't noticed any performance issues at all on a 2014 MBP.

I've never seen total memory usage exceed 100MB. It's 2017, my phone has 8GB of RAM, gently caress it :shrug:

I think a significant number Electron apps have performance issues because they were just poorly authored in the first place. Typical modern front-end-hipster-bearded problem: lots of guides out there telling you to npm install 50 gazillion support libraries before you even start writing code, without really explaining why you need them to begin with (hint: you don't, it was just how the guy who wrote the guide learned).

Capri Sun Tzu posted:

I want this! The curse (now Twitch I guess) client is bloated as poo poo now.
Good to know there's interest. Maybe I'll actually finish this dumb thing (knocked out automatic dependency detection and installation last night, hooray)...

DICTATOR OF FUNK fucked around with this message at 23:04 on Dec 29, 2017

Doh004
Apr 22, 2007

Mmmmm Donuts...

DICTATOR OF FUNK posted:

Good to know there's interest. Maybe I'll actually finish this dumb thing (knocked out automatic dependency detection and installation last night, hooray)...

Throw it up on Github or something!

DICTATOR OF FUNK
Nov 6, 2007

aaaaaw yeeeeeah

Doh004 posted:

Throw it up on Github or something!

I plan on open sourcing it once I can be entirely sure that Curse won't immediately shut down the method I'm using to get addon data from their API :v:

Athas
Aug 6, 2007

fuck that joker
I got my ray tracer working properly:



It's crude, but I'm fairly happy with it, as it's fast enough to run in real time, even on my crappy laptop GPU.

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

Pff, I wrote a thing that randomizes postal codes based on regex and a Spring endpoint that will give me logfile entries based on one or two query parameters. Most of the week was consumed by refactoring a monsterobject to be able to split it up. In short, if my work is done well, nobody will see it. You guys are awesome in doing the visuals, I never got the hang of that.

Athas
Aug 6, 2007

fuck that joker
I'm not at all good at visuals either. The algorithm and design behind that ray tracer is something I have stolen from someone else. My only contribution was to rewrite it in the programming language that I work on (which did involve rewriting the tracing from being recursive to being iterative). Still, it's rather fun to write code in your own language and see the results pop up on the screen.

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

Writing mostly testing code, my visual is when all the little checkmarks are green and none go red because some idiot deployed something to the testing environment without checking if it works locally.

Eela6
May 25, 2007
Shredded Hen

Keetron posted:

In short, if my work is done well, nobody will see it. You guys are awesome in doing the visuals, I never got the hang of that.

I mostly refactor and write tooling and tests, so I feel you. Everything in this thread is awesome!

Luigi Thirty
Apr 30, 2006

Emergency confection port.

My Jaguar 3D engine is coming along.

- I wrote a model importer in Scheme that turns standard OBJ files into a binary format for easy loading by the GPU!
- Scenes can contain multiple objects! (This was hard.)
- The camera can move and rotate in all 3 dimensions!

It runs at a whole 35FPS with 3 rotating cubes on screen.

https://twitter.com/LuigiThirty/status/946913810148941825

(The black lines are for debugging the renderer)

Athas
Aug 6, 2007

fuck that joker
Do you fully simulate the hardware, or are you just implementing the APIs as best you can? The Jaguar hardware looks really bizarre.

Luigi Thirty
Apr 30, 2006

Emergency confection port.

It runs in a Jaguar emulator. The emulator isn’t totally accurate to all the quirks of the hardware so it doesn’t quite run on my Jaguar flashcart yet.

Volguus
Mar 3, 2009
Program that can be used to control the Logitech gaming keyboard's lights using the hidraw library under linux. Is still early and still wonky as it can be seen from the gif, not all keys get changed.



However, what's different than other programs is that my program embeds a Javascript engine (v8) so essentialy one controls the lights via a javascript script. The script used to produce the effect seen in the video is:
JavaScript code:
var keyboards = GetKeyboards();
var keyboard = null;
if(keyboards.length>0)
{
    keyboard = keyboards[0];
}

if(keyboard != null)
{
    for(var i=0;i<10;i++)
    {
        keyboard.SetAllKeys((i*20),(i*20),i*10);
        sleep(100);
    }
    for(var i=10;i>0;i--)
    {
        keyboard.SetAllKeys((i*20),(i*20),i*10);
        sleep(100);
    }
}
At the moment it is a very primitive engine. It provides global functions: version, log, sleep, include/require and GetKeyboards. The keyboard object only provides at the moment: ToString() and SetAllKeys(r,g,b).

Volguus
Mar 3, 2009
A bit more progress on the lighting keyboard JS engine (and now it properly lights up keys, who knew a 1ms delay would work so well):
JavaScript code:
    var keys = keyboard.GetKeys();
    keyboard.UpdateKeys(keys,0,0,0);
    
    for(var i=0;i<keys.length;i++)
    {
        keys[i].color = 0xffff11;
        keyboard.UpdateKey(keys[i]);
        sleep(100);
    }
This produces:

LP0 ON FIRE
Jan 25, 2006

beep boop
I started an ascii editor in JS where you can animate colors at a certain rate. Every individual character can have their own rates. The UI is pretty bad at this point, and so is my drawing abilities! I want to be able to save your drawing in the URL and share it with others, as long as it's not way too big. Maybe I can use some type of RLE compression.

https://www.youtube.com/watch?v=K171mO7DMxU

Corla Plankun
May 8, 2007

improve the lives of everyone
Rad! That reminds me of the building editor for SimCity 2000, where you could choose from a palette of about 230 normal colors and 10 colors that changed periodically.

LP0 ON FIRE
Jan 25, 2006

beep boop

Corla Plankun posted:

Rad! That reminds me of the building editor for SimCity 2000, where you could choose from a palette of about 230 normal colors and 10 colors that changed periodically.

I loved that editor in SC2000.

The result was unexpected since I didn’t think about how a character’s timer would start ticking at the time it was placed. So when you draw with the mouse, the animation of the color change mimics the speed of the stroke.

I made this because someone had a dream of an ascii Christmas tree and they wanted me to make something to reproduce it somehow. When I improve the UI, then they can try to recreate it.

Ranzear
Jul 25, 2013

Semi-related, totally different system, but never gets old: http://www.effectgames.com/demos/canvascycle/

Having an entire cycle per color is cool though.

LP0 ON FIRE
Jan 25, 2006

beep boop
You can now save your image into a huge query string and share it by clicking the "compress" button. CoC recently gave me a bunch of awesome suggestions of how to properly compress it down much further, which I'll implement in another version.



The UI is really crap right now and not good for mobile, and I'll add stuff like right click functionality and typing eventually too, but you can try it out for yourself if you would like:

http://mysterysystem.com/stuff/xmas...n8nHbODimqAqAgA

Ranzear posted:

Semi-related, totally different system, but never gets old: http://www.effectgames.com/demos/canvascycle/

Having an entire cycle per color is cool though.

I stared at this for like 5 minutes :krad:

Careful Drums
Oct 30, 2007

by FactsAreUseless

Polio Vax Scene posted:

I believe there is an I Wanna Be The Guy fangame that uses twitch chat as input, so if you type emotes into the chat they become projectiles in the game that the streamer has to dodge.

that reminds me of the 'twitch plays pokemon' craze that happened a while back where game input was crowdsourced through twitch chat

Active Quasar
Feb 22, 2011

Meat Beat Agent posted:

Related: here is an unfinished attempt at cramming a SNES program into 256 bytes of ROM. It's kind of painful when you have to burn a lot of it just to initialize the hardware.

Nice work, always fun to see the SNES getting some love. At first look I thought this was HDMA prettiness but I enjoyed the actual clever abuse of the GPU much more. Direct HBlank writing seems pretty mad, given the tiny timeslice available.

Meat Beat Agent
Aug 5, 2007

felonious assault with a sproinging boner
Being able to use DMA would have definitely made it look better, but unfortunately I couldn't manage to actually set it up with the extreme ROM size constraint in this case.

Kinda related to that (and to Luigi Thirty's Jaguar post up there) I made another SNES thing last month (64kb this time) that does use plenty of HDMA and also features babby's first attempt at orthographic 3D stuff on a stock cartridge. I guess it came out okay considering the insanely slow CPU.

https://www.youtube.com/watch?v=9qHBVDgwCiI

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense


I've built a thing that generates email addresses. You name the site, click ok, and it gives you an email address to use. I've blurred out a bunch of stuff because I'm actually using it, it's really great. I recommend it along with bitwarden.

Now every site I use has a different password and a different email address.

It was difficult to get everything working with html emails and file attachments but it does work. The api is all based on websockets, so I always receive live notifications of new messages. I built it as a notification service first and foremost. You can register an app with it, then instead of asking a user for their email address ask them to click a link that gives them the option to allow incoming messages from your app.

Then you don't have to use email. You can pipe messages directly to them.

Veni Vidi Ameche!
Nov 2, 2017

by Fluffdaddy

Nolgthorn posted:



I've built a thing that generates email addresses. You name the site, click ok, and it gives you an email address to use. I've blurred out a bunch of stuff because I'm actually using it, it's really great. I recommend it along with bitwarden.

Now every site I use has a different password and a different email address.

It was difficult to get everything working with html emails and file attachments but it does work. The api is all based on websockets, so I always receive live notifications of new messages. I built it as a notification service first and foremost. You can register an app with it, then instead of asking a user for their email address ask them to click a link that gives them the option to allow incoming messages from your app.

Then you don't have to use email. You can pipe messages directly to them.

I don't understand. How do attachments and HTML emails factor into this? You're not just generating addresses, then? You've actually created a client for reading and managing the messages? This sounds interesting, but I want to understand what it actually does.

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense
Now that you say that I could have built it as a forwarding service... oh well!



It's a full blown email reader. You cannot reply, although if you click the email address it was sent from (reply-to if available) in the header, it uses that `mailto:` and auto-adds the subject and everything in there so that you can use your real email to send a message if you want. I've never had to. Nearly everything that has ever shown up in my email inbox ever for my entire life I've never needed to reply to it.

With this system in place it's very easy to tell who's selling your email address, and stop all emails from any source entirely.

It also has a mail throttling system. So for any source you can set how often you want to be notified by email that there are new messages, anywhere from immediately to never. Then you receive sort of a collated bunch of previews of the messages all at once.

So now my real email I can use for actual email purposes again, and as often as I've told it to my application sends me a single email.

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense
The email addresses it generates are two sets of 8 characters separated by a dot. One set is a hashed primary key indicating the account it belongs to and the other is a randomly generated key for the account. I figure that's sufficiently complex to prevent spamming millions of messages to my domain, I'd also block any sources that hit too many addresses that don't exist.

Capri Sun Tzu
Oct 24, 2017

by Reene

Nolgthorn posted:



I've built a thing that generates email addresses. You name the site, click ok, and it gives you an email address to use. I've blurred out a bunch of stuff because I'm actually using it, it's really great. I recommend it along with bitwarden.

Now every site I use has a different password and a different email address.

It was difficult to get everything working with html emails and file attachments but it does work. The api is all based on websockets, so I always receive live notifications of new messages. I built it as a notification service first and foremost. You can register an app with it, then instead of asking a user for their email address ask them to click a link that gives them the option to allow incoming messages from your app.

Then you don't have to use email. You can pipe messages directly to them.
This is cool

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

Nolgthorn posted:

The email addresses it generates are two sets of 8 characters separated by a dot. One set is a hashed primary key indicating the account it belongs to and the other is a randomly generated key for the account. I figure that's sufficiently complex to prevent spamming millions of messages to my domain, I'd also block any sources that hit too many addresses that don't exist.

What tld do you use for this? Your own or some free provider? Also, how do you instruct that domain to capture all those email addresses?

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense

Keetron posted:

What tld do you use for this? Your own or some free provider? Also, how do you instruct that domain to capture all those email addresses?

MX record in the DNS configuration. Currently I have three parts, the front end which is a single page Vue application, the API which is a Websockets server, and a separate service which parses incoming email and transforms them for consumption by the API.

The mail reader uses the public API for delivering messages to users however I cheated a bit. I'm sure other people's applications wouldn't have access to account data. I look up the account I want to deliver to based on the "to:" address field.

All accounts automatically allow messages from the super-privledged mail service.

That just sort of "does everything" from there. I don't wanna release the tld because it's an alpha and I'm worried about getting sued for god knows what. The internet isn't the wild west anymore. While I have it set up to recover gracefully from downtime, I'm sure something will go wrong and messages will get lost somehow eventually or someone will use it to store a copy of Black Panther. Public makes me uncomfortable. However if you wanna mess around with it and promise to give me feedback please send me a PM.

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

Nah, you can keep your cards to your chest, that is fine. I was just curious if you own the tld and basically build a personal mailserver which is kinda what you did. If you decide to open source this, I would be curious to see if I can use it even tho I am fine with gmail at the moment.

It would be cool to offer tld email with spam prevention as a service tho, like "pay me :20bux: a year and I will handle all email poo poo for you so you can track who uses your email fairly and who is a dick" and that service would buy some randomized tld. Make it a plugin for chrome that recognizes your actual email and replaces it with a random when filling a form. Is this a thing?

Volguus
Mar 3, 2009

Keetron posted:

Nah, you can keep your cards to your chest, that is fine. I was just curious if you own the tld and basically build a personal mailserver which is kinda what you did. If you decide to open source this, I would be curious to see if I can use it even tho I am fine with gmail at the moment.

It would be cool to offer tld email with spam prevention as a service tho, like "pay me :20bux: a year and I will handle all email poo poo for you so you can track who uses your email fairly and who is a dick" and that service would buy some randomized tld. Make it a plugin for chrome that recognizes your actual email and replaces it with a random when filling a form. Is this a thing?

mailinator.com, xvknp.com and many others.

RIP Syndrome
Feb 24, 2016

A (very) poor man's version of this is to append + and a unique string to your mailbox wherever you provide it. E.g. you enter myacct+amazon@gmail.com when you sign up for Amazon, and your mail still arrives in myacct and you can filter on the +amazon bit in the To: header. All serious off-the-shelf software supports it, and I think most e-mail providers (gmail, outlook, ...) do too.

Of course, spammers can just strip the +... part to get at your underlying address. Are they smart/confident enough to do that, though?

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense
In my experience nah they aren't. But I still like my solution better though.

Adbot
ADBOT LOVES YOU

RIP Syndrome
Feb 24, 2016

Nolgthorn posted:

In my experience nah they aren't. But I still like my solution better though.

Oh yeah, it has obvious benefits and it sounds like it does a lot more besides. Not being down on it at all :)

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply