Thread #108275562
HomeIndexCatalogAll ThreadsNew ThreadReply
H
The great debate (part two) edition.

>Free beginner resources to get started with HTML, CSS and JS
https://developer.mozilla.org/en-US/docs/Learn - MDN is your best friend for fundamentals
https://web.dev/learn/ - Guides by Google, you can also learn concepts like Accessibility, Responsive Design etc
https://eloquentjavascript.net/Eloquent_JavaScript.pdf - A modern introduction to JavaScript
https://javascript.info/ - Quite a good JS tutorial
https://flukeout.github.io/ - Learn CSS selectors in no time
https://flexboxfroggy.com/ and https://cssgridgarden.com/ - Learn flex and grid in CSS

>Resources for backend languages
https://nodejs.org/en/learn/getting-started/introduction-to-nodejs - An intro to Node.js
https://www.phptutorial.net - A PHP tutorial
https://dev.java/learn/ - A Java tutorial
https://rentry.org/htbby - Links for Python and Go
https://quii.gitbook.io/learn-go-with-tests - Learn Go with Tests

>Resources for miscellaneous areas
https://github.com/bradtraversy/design-resources-for-developers - List of design resources
https://www.digitalocean.com/community/tutorials - Usually the best guides for everything server related

>Need help? Create an example and post the link
https://jsfiddle.net - if you need help with HTML/CSS/JS
https://3v4l.org - if you need help with PHP/HackLang
https://codesandbox.io - if you need help with React/Angular/Vue

/wdg/ may or may not welcome app development discussion. You can post and see what the response is.
Some app technologies of course have overlap with web dev, like React Native, Electron, and Flutter.

We have our own website: https://wdg-one.github.io

Submit your project progress updates using this format in your posts, the scraper will pick it up:

:: my-project-title ::
dev:: anon
tools:: PHP, MySQL, etc.
link:: https://my.website.com
repo:: https://github.com/user/repo
progress:: Lorem ipsum dolor sit amet

Previous: >>108260794
+Showing all 19 replies.
>>
Is there more tutorial for http://tululoo.com/ or can anyone make one?
Also for the twat who said "buy an ad" no,fuck off, kys, I have no account here, moron.
>>
>>108275902
My recommendation is to read the documentation
>>
>>108275562
working with laravel made me admire the concept and abstraction, tehn later went back to php, and made me admire naking ur own micro implementation oh laravel
>>
>>108275902
Your dumb ass can buy two ads.
>>
>>108264667
Here's a solution with no mutations or side effects.
/** @typedef {Record<string, any>} Tree */
/** @typedef {ReadonlyArray<string>} Path */

const paths = [
"src/index.js",
"src/utils/helpers.js",
"src/utils/math/add.js",
"public/index.html",
"README.md",
];

const toPathArray = (/** @type {string} */ str) => str.split("/");

const pathToBranch = (
/** @type {Path} */ path,
/** @type {Tree | undefined} */ branch = undefined,
) => {
const pathSegment = path.at(-1);
if (!pathSegment) {
if (!branch) throw new Error("Invalid params.");
return branch;
}
if (!branch) {
return pathToBranch(path.slice(0, path.length - 1), {
[pathSegment]: null,
});
}
return pathToBranch(path.slice(0, path.length - 1), {
[pathSegment]: branch,
});
};

const toMergedBranch = (
/** @type {Tree} */ tree,
/** @type {Tree} */ branch,
/** @type {Path} */ path = [],
) => {
if (!branch) return pathToBranch(path, tree);
if (!tree) return pathToBranch(path, branch);
const pathSegment = Object.keys(branch).at(-1);
return toMergedBranch(
tree[pathSegment],
branch[pathSegment],
path.concat(pathSegment),
);
};

const mergeBranchReducer = (
/** @type {Tree} */ accumulatedTree,
/** @type {Tree} */ currentBranch,
) =>
Object.assign(
structuredClone(accumulatedTree),
toMergedBranch(accumulatedTree, currentBranch),
);

const toFileSystem = (/** @type {string[]} */ path) =>
path
.map(toPathArray)
.map((p) => pathToBranch(p))
.reduce(mergeBranchReducer, {});


(technically Object.assign() mutates the first param, but it's an anonymous clone inside the method's scope so it's fine)
>>
>>108277228
Please use TypeScript and the `function` keyword. Thanks.
>>
>>108277380
>>
>>108277453
If I ever start my own company I will single-handedly determine the formatting and linting rules. Anybody who contravenes those rules will be fired.
>>
>>108277500
If I ever become a sigmallionnaire I will single-handedly bankrupt (You) with silly lawsuits. Anypony who contravenes will be sent to the shadow realm.
>>
>>108277228
your code implements clean code principles (I believe) and that should make it more understandable and clear, I have no clue what your code does after briefly reading it
>>
>>108278584
which specific clean code principles does it implement?
>>
>>108279307
I'm not a book or documentation
>>
I'm building a JSON/JS object tool for shits and giggles and am worker on a parser. Would it be better to go character by character or use regex to capture tokens then skip ahead?
>>
>>108279481
please just admit that you were saying random bullshit and trying to back it up with big words.
>>
>>108279759
that's 0% the case
>>
>>108279499
Look up how parsers are normally written I guess. There's probably an idiomatic way of doing it which is more performant than other ways
>>
Alright lads I'm going to bed, please make the thread survive until tomorrow
>>
>>108275562
Picrel is basically a ruby vs PHP vs python.
Just pick you favorite language and dedicate a few weeks to learn the framework, each one implements best practices and dev convention for their respective language modern development (ruby is comfier IMHO).
>>
>>108276435
I read it. Tululoo.chm. There's only so much to call, a sample game even. Nor even anything modern.
Otherwise, refresh me.
>>108276568
>This guy again
For what, gee. Also, welcome back, nig.

Reply to Thread #108275562


Supported: JPG, PNG, GIF, WebP, WebM, MP4, MP3 (max 4MB)