[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
How bad were you when you started programming ?
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 255
Thread images: 19
File: 1413098951837.png (410 KB, 3000x3000) Image search: [Google]
1413098951837.png
410 KB, 3000x3000
How bad were you when you started programming ?
>>
I love this maymay
>>
File: 1413100407761.png (116 KB, 1515x663) Image search: [Google]
1413100407761.png
116 KB, 1515x663
>>51846874
i know rite
>>
>>51846864
Pretty shit, I am still pretty shit but I get what I want done somehow. Pretty sure I would make most people here insane, but I am not a programmer. I am a civil engineer, I just make tiny scripts.
>>
Still shit I'm afraid OP.
>>
> first day programming at a game-dev school, learnan C
> what is studio.h and why do I include it
> what is a for loop and why do we use i
> such is life as a beginner programmer

Nowadays I know C, C++, C#, Java and Python, Big O notation, Programming Patterns and more. /g/ may shit on those languages, but if they land me a decent paying job, I'm down.
>>
>>51846890
Never this bad, but I remember my hay days. I haven't grown because too lazy to actually use my programming skills.
>>
I had really trouble with for and while
>>
>stupid algorithms with quadratic or worse complexity
>"lol, datatypes. Bigger is better" everything is int or double
>single letter variables
>no mathematical optimizations
>no machine code optimization
in the order i fixed those bad habits
>>
>>51847015
How long has it been since you were in school anon?
>>
File: 1433667224589.jpg (75 KB, 500x491) Image search: [Google]
1433667224589.jpg
75 KB, 500x491
>tfw not even a FizzBanger yet
>>
I wrote a "hello world" application and my program told me to "fuck off"
>>
>>51846864
To be fair, this one isn't that bad.

It's lazy as fuck, sure, but it doesn't show any fundamental misunderstanding of basic programming concepts like >>51846890 does.
>>
I can't even fizz buzz yet.
>>
>>51846864
i remember putting together shit in AutoIT. i was so bad.
at some point i had to generate a unique file name. i knew how to generate one and i knew how to check if it existed, but i didn't understand the concept of loops. so i made a block that generated a name and checked if it existed, then copy-pasted that like 3 times. if all 3 checks failed, it exited with some error message, saying it couldn't find a unique name.
i also had this 1337 hax0r script that logged in to public mail servers and sent mails with faked sender addresses. i didn't know how to execute commands in a console directly, so my script just opened a cmd and send keystrokes to it. tons of static sleep() too.
>>
>>51846864
I thought making my variables one letter long would help reduce how much memory my program used.
Also, my first language was Java and I had no idea what OOP was, or what a constructor was, and as far as I knew anything under the hood was pure magic to me.
>>
>>51847086
I'm 28 and have gone back to school this year after working for 2 years for a laboratory (not as programmer), before that I went to the shitty game-dev school, which couldn't land me a job. I'm now learning to be a proper all round programmer.
>>
I don't want to even talk about it anonymously especially since I'm still shit years later. Always room for improvement, never good enough.
>>
When I started with Python on Windows, I thought the only way to run programs was to use the IDLE that comes with the installation.
>>
>>51847379
Wooo.

At my school, we are taught c++.
People think that the only way to execute their programs is through Visual Studio.
>>
>>51846864
I remember when learning C back in school, instead of using strcmp() I did something like this in a project once:
>if(string1[0] == string2[0] && string1[1] == string2[1] && ... )
Fun times.
>>
File: 1439760272225.jpg (41 KB, 500x371) Image search: [Google]
1439760272225.jpg
41 KB, 500x371
>>51847015
>studio.h
>>
File: ௵.jpg (2 KB, 124x87) Image search: [Google]
௵.jpg
2 KB, 124x87
>>51847462
I... what
>>
>>51847532
Well, it worked, so ...
>>
>>51847015
exactly the same to me, and what’s more, as English isn’t my native language, it sometimes takes me time to understand the name of functions and libraries (cout => the output for C, stdio => standard input/output)

Also, learning how to make algorithms in general was quite hard to me.
>>
>>51846864
I still remember the rationale they gave for this when I sent a pull request was "this was more readable than a for loop".

Like what the fuck are you on? Who doesn't understand what a fucking for loop does?
>>
I'm still shit.
>>
>>51847754
I wrote something for an embedded device one time and the person with me wanted me to unroll the loops because he said the people who may need to maintain it later might not understand it. Why would you work on these things as C programmers if you don't know C? I don't even.
>>
When I was 10 I was autistic af so I taught myself C++

By the time coding was actually taught to me in education I could program effectively
>>
>>51847861
I'm jealous
>>
if (if (if (if (if (/*test*/)))))
>>
>>51847902
so am I

I had the chance of having my father teaching me BASIC on his old ZX81 tho, quite a useless language, but it taught me the bases of programming in general. But alas, I was too lazy to go as far as I wish I had.
>>
>>51847523
That's how I read it ! How was I supposed to know it meant Standard I/O?
>>
Should I feel bad for doing badly on Topcoder problems?
>>
>>51847205
It's not even lazy, a for loop would be quicker to write.
>>
>>51846864
I didn't know the difference between "if" "if else" "else if" and "else"
>>
File: compsci.png (73 KB, 694x801) Image search: [Google]
compsci.png
73 KB, 694x801
>>
>>51846890
What if they input a question mark or whatever
>>
>>51847205
It displays a lack of awareness regarding hashes. And timestamps. Or any other better naming scheme.

Heck, seems like it would've been cleaner to generate a random number, convert it to a string, and use that as a name. Without knowledge of the problem domain I can't really comment further...
>>
I wouldn't put it past myself to do some of the things in the CS graduate images. It was only for the first few attempts though, since I knew I was being retarded and searched for a better way. Started mostly with C.
>>
>>51848541
It would say that's a number and a word. If you were to input a day say Dec. 13 it'd say that's a number.
>>
>>51848312
No, pressing ctrl+d 5 times would still be faster.
>>
I still sometimes get nightmares about this one
void grossif(int num){
if(num ==1){
GPIO_ResetBits(GPIOD, GPIO_Pin_7 | GPIO_Pin_11 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 );
GPIO_SetBits(GPIOD, GPIO_Pin_7 );//digit 1
}else if(num == 2){
GPIO_ResetBits(GPIOD, GPIO_Pin_7 | GPIO_Pin_11 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 );
GPIO_SetBits(GPIOD, GPIO_Pin_11 );//digit 3
}else if(num==3){
GPIO_ResetBits(GPIOD, GPIO_Pin_7 | GPIO_Pin_11 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 );
GPIO_SetBits(GPIOD, GPIO_Pin_8 );//digit 2
}else if(num==4){
GPIO_ResetBits(GPIOD, GPIO_Pin_7 | GPIO_Pin_11 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 );
GPIO_SetBits(GPIOD, GPIO_Pin_9 );//digit 4
}else if(num==5){
GPIO_ResetBits(GPIOD, GPIO_Pin_7 | GPIO_Pin_11 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 );
GPIO_SetBits(GPIOD, GPIO_Pin_10 );//digit 5
}
}

void displaystuff (int digit, int number){

if(number == 0){
zero(digit);
}
if(number == 1){
one(digit);
}
if(number == 2){
two(digit);
}
if(number == 3){
three(digit);
}
if(number == 4){
four(digit);
}
if(number == 5){
five(digit);
}
if(number == 6){
six(digit);
}
if(number == 7){
seven(digit);
}
if(number == 8){
eight(digit);
}
if(number == 9){
nine(digit);
}
}


1/2
>>
>>51848568
Hell if he just wants to make sure no names conflict just start at 0000 and increment.
>>
>>51846864
I invented the megabyte.
>>
>>51848604
2/2
void zero(int num){    //6 7 8 9 10 11
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_12 );
}
void one(int num){ //7 8
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
}
void two(int num){ //6 7 9 10 12
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_8 | GPIO_Pin_11 );
}
void three(int num){//6 7 8 9 12
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_10 | GPIO_Pin_11 );
}
void four(int num){ //7 8 11 12
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_9 | GPIO_Pin_10 );
}
void five(int num){ //6 8 9 11 12
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_7 | GPIO_Pin_10 );
}
void six(int num){ //6 7 8 9 10 12
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_7 );
}
void seven(int num){//6 7 8
GPIO_ResetBits(GPIOE, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
grossif(num);
GPIO_SetBits(GPIOE, GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 );
}
more shit for 8 and 9 but too lazy to post
>>
>>51848568

When I made a file hosting site, I had it generate 8-character ID's consisting of upper/lowercase letters and numbers. In the extremely unlikely event of a collision, it would keep trying until a unique ID was found. I don't know why Pomf's developers had a limited amount of tries, that seems retarded. I still chalk it up to laziness more than anything else.
>>
>>51846864
The first time I wrote fizzbuzz it took me 5 hours.
I had trouble visualizing how the computer goes through a loop.
>>
>>51847258
Are you me?
This is me right now. I'm on my second day learning Java. I want to make an android app.
>>
>>51847523
that's how I read it when I first started to learn C as well. Still sticks with me everytime I read it as "studio.h", then I think "shit it's standard io fugg"
>>
I knew a guy that didnt use for loops because he claimed that they made his program "lag".
>>
>>51846864
<?php

$con = mysqli_connect("localhost", "sqladmin","dgFHFfhSOnk3kk4t", "testdb");
$res = $mysqli->query("SELECT * FROM testtable ORDER BY id ASC where id=".$_REQUEST['id'].";");
...
echo "second task";
...
$con2 = mysqli_connect("localhost", "sqladmin","dgFHFfhSOnk3kk4t", "testdb");
$res2 = $mysqli->query("SELECT * FROM testtable ORDER BY id ASC where id=".$_REQUEST['herp'].";");
...
?>

This bad.
>>
>>51848800
Why would you have 8-character ids in a non-memory constrained system anyway? And why not use a hash of the filename and a salt (like timestamp and a PRNG output concatenated) as an id?
>>
>>51846864
Not that bad. I did things like:

if ayy then
> do lmao
>>
Changing a binary number to decimal. I can't believe my school was asinine enough to start us with php, what the fuck were they thinking? Thank God the next few classes were C, C++, and Python.
<?php
$n=0;
$r=0;
$bin=array(1,1,0,0,1,1,0,1);
if($bin[$n]==1)
{
$r=$r+1*pow(2,7-$n);
$n=$n+1;
}
else
{
$r=$r+0*pow(2,7-$n);
$n=$n+1;
}
do{
if($bin[$n]==1)
{
$r=$r+1*pow(2,7-$n);
$n=$n+1;
}
else
{
$r=$r+0*pow(2,7-$n);
$n=$n+1;
}
}while($n<=7)
;echo$r
?>
>>
>>51846864
Pretty bad of course. I certainly had a bit of "Mt. Stupid syndrome," though I grew out of it quickly without embarrassing myself.
>>
>>51846874
>saying "maymay"
kill yourself
>>
H-how is my FizzBuzz bros ?

public class test {
public static void main(String[] args) {

String f="Fizz", b="Buzz";

for (int i = 1; i <= 100; i++){
if (i%3==0){
System.out.println(i+": "+f);
}
else if (i%5==0){
System.out.println(i+": "+b);
}
else if (i%15==0){
System.out.println(i+": "+f+b);
}
else{
System.out.println(i);
}
}
}
}
>>
>>51849283
Fine
>>
>>51849103
A couple of reasons:
1. Short IDs allow for compact and uniform URLs. This is also why Pomf used 6-character IDs, I'm assuming.
2. The chance of a collision in such a naming system is around 1 in 2E14 - in other words, non-existent, so it wasn't a real concern.

I could have used hashing, but it's not as straightforward to implement and essentially results in the same thing anyway.
>>
>>51846864
i forgot to free soo many pointers... took me a while to learn about valgrind and memleaks
>>
>>51849283
>java
hang yourself
>>
>>51847902
It's not like I became some kind of superstar programmer

Cherish your outdoor childhood anon
>>
Once wrote a program where I defined globals zero = 0, one = 1, two = 2, etc and used spelled out numbers for the entire program.
>>
>>51849375
Java is okay doe
>>
>>51849409
C glorious master race
>>
>>51849341
>1. Short IDs allow for compact and uniform URLs.
That's a valid concern for social media integrations, I suppose.
>essentially results in the same thing anyway
Sure
>it's not as straightforward to implement
Not true. It's easier, and the code looks less like shit.

But yeah, I'm totally nit-picking here.
>>
really bad

however, even though i was self taught for years, i don't think i really developed bad habits
>>
I got meme'd by /g/ in 2010 and started programming with C (before that I've done some bash scripting, editing PHP configs / spaghetti code thru documentation / simple html fuckery) and I've done things like
>write functions then find out an equivalent was in the stdio / stdlib
>cascade include local project files resulting in tens of lines of includes to other files in every file (and somehow making it work)
>make linked lists that add new links infinitely until 4 GB of memory fills up and Xorg gets killed for lack of memory
>fried audio controller by writing random shit into acpi ports
>>
File: 1448551125709.png (283 KB, 810x570) Image search: [Google]
1448551125709.png
283 KB, 810x570
Luckily, my past transgressions in Visual Basic have been lost to history.
>>
>>51849020
lol wtf, u made 2 connections to the same database?
>>
>>51849782
Oh yeah, and never closed either of them. I recently refactored that project I worked on only a few years ago, and I had to replace the hard-coded admin credentials and SQL injection vulnerable queries that were embedded on EVERY file several times.
>>
File: fizzbuzz.png (46 KB, 721x680) Image search: [Google]
fizzbuzz.png
46 KB, 721x680
>>51849283
fixed
>>
>>51850270
Senpai, please.
http://pastebin.com/XtVUyQ1x
>>
>>51847459
Really? We also learned C++ in my school, but we only used Visual Studio for the intro course. After that, we were working in the command line and gcc/g++. No offense but the people at your school must be kinda stupid. command line compilation isn't even that hard
>>
>>51850579
at my school, we learned java on windows. first thing we did is write a hello world in notepad, then compile and run it in cmd. after that, we switched to eclipse. but everyone knew how to do the basics without eclipse.
>>
>>51847015
> what is a for loop and why do we use i

I've never bothered to look it up, but I think it's because i stands for "item"
Does anyone know if my guess is right?
>>
>>51847079
>>"lol, datatypes. Bigger is better" everything is int or double
>>single letter variables
>>no machine code optimization
This was me

>>stupid algorithms with quadratic or worse complexity
>>no mathematical optimizations
I've always been fucking autistic about math and algorithm complexity, I don't know why
>>
>>51851547
I thought it was related to 'iterate'.
>>
>>51851588
I'm finally googling it and I'm getting everything from it being involved in summation to "index"

funny enough, I'm not getting iterate or item.
>>
>>51851684
I think it was index actually, probably got iterate from somewhere else.
>>
>>51851547
>>51847015
>>51851588
It probably came from a number of things, but if I had to guess, it's common to see it as a subscript for summations. Just my two cents.
>>
>>51851547
I always saw arrays as matrices. Since i and j are used so much in elementary linear algebra, I got used to it without questioning it.
>>
File: hhgNd[1].png (671 B, 118x50) Image search: [Google]
hhgNd[1].png
671 B, 118x50
>>51851684
>>51851703
>>51851719

People are saying that the common subscript you're talking about may have also come from index.

Or maybe "i" was just easy to write down
>>
I distinctly remember writing a method that returned List<KeyValuePair<myStruct,string>>
>>
>>51847015
>I'm still a beginner and just wondering how do you become a good programmer?
>I'm currently learning python but have no clue what it's actually used for in the workforce..
>Also what other languages should I get familiar with before my next semester?
>>
>>51851784
To me is was basically the same as asking "why do we use X as a variable" I probably would have questioned it in linear algebra if I had gotten to that first, but I started programming before I took the class, so I ended up wondering about it there.

When it comes right down to it, someone probably picked a letter and everyone stuck with it.
>>
File: 133204333059186.jpg (82 KB, 350x350) Image search: [Google]
133204333059186.jpg
82 KB, 350x350
>>51846864

Didn't know what the fuck html-syntax was. Now I know and don't want to touch it with a ten foot pole.
>>
I think it's important for people to remember that it's more important to have non-elegant looking code that does its job rather than elegant looking code that does a shitty job.
>>
>>51851912
That's actually the reverse.
The most important thing is that your code can be used, modified, and maintained by any other developer in the company.

If that means it has to be slower or less efficient, then that's what happens. You can always come back and refactor well-formatted code later, but it's much much harder with "ugly, performant" code. Especially because you run the risk of a massive ripple effect.
>>
>>51851912
This was true when computers were slow as molasses. Nowadays it's better to have readable code especially with the advent of self optimizing compilers.
>>
>>51847462
You are either extremely old, or too retarded to Google "string methods c"
>>
>>51851965
>>51852041
You're right, but I honestly think it does depend on the size and scope of the project in question, and if it will continue to be maintained regularly after release.
>>
File: 1445997149844.jpg (276 KB, 538x502) Image search: [Google]
1445997149844.jpg
276 KB, 538x502
>>51851547
>>51851719
>>51851784
We were taught that i stands for index and as in the index of the of the array. As to why we also used j and k for 2-3 dimensional arrays I just assumed we were going alphabetically from there.
>>
I learned HTML when I was a kid to work on vBulletin Boards with my friend.

That's it. I'm going back to school (at 25, bleh) to learn code. Hoping to get a 2 year degree in Computer Science and then transfer to a 4 year school to learn even more. My friend knows Ruby, Python and some other shit and she does contract work, her biggest contracts have been with Google. She inspired me to get into it.
>>
int loop = 1;
while(loop == 1) {
//whatever
}

Yeesh.
>>
>>51852269
>As to why we also used j and k
I had to use nested loops before I saw anyone else using them, so I used j and k for exactly that reason. I imagine you're right
>>
I remember making flash games in as2 when I was in middle school, christ it's horrifying.
>>
>>51851547
I've always assumed it stood for iteration
>>
>>51847734
>cout => the output for C
Character OUTput, anon
>>
>>51849283
Not sure if nobody else noticed yet or they're just playing along.

Nice and subtle though.
>>
>>51847258
Heh, reminds me of the first programming class I took. The teacher didn't seem to be able to explain even basic stuff, like somehow I finished the class not knowing the difference between a class and a function, and having no clue how recursion worked. I can't even understand now how I couldn't have gotten it back then.
>Java
>>
>>51848487
>>51848487

That is not so bad actually, apart from that while which should have been while (position < sizeof(s)/sizeof(a[0]) )
>>
>>51852489
while (true == true) {
// whatever
}


>mfw I still do this because I work with idiot and I get less questions
>>
>>51846864
bad. but everyone's got to start somewhere.
>>
>>51853586
You obviously don't know C. Rather than reverse the string that program would print the string 6 times but remove a letter each time.

It's output would be something like
string
tring
ring
ing
ng
g
>>
File: grapher3.webm (3 MB, 854x480) Image search: [Google]
grapher3.webm
3 MB, 854x480
void grid(int a, int point[a][DIM], int x, int y) {
int i, j, k, l, m, d, z;
bool coord;

for (d = 1; d < a + 1; d++) { // Animation loop
puts("y = (x/6) * (sin(x/10)) + 30");
for (k = y - 1; k >= 0; k--) { // graphing loop
for (l = 0; l < a; l++) {
for (m = 0; m < d; m++) { // Checks if x and y match counters, change d
if (l == point[m][0] && k == point[m][1]) { // to a and comment out the highest loop
coord = true; // to cancel animation
break;
} else
coord = false;
}
if (coord == true)
printf("█" );
else
printf("-");
}
putchar('\n');
}
sleepms(75);
if (d < a) {
for (z = 0; z < y - 1; z++)
putchar('\n');
}
}

return;
}


part of my first "project"
webm related
>>
>>51853677
MFW I use this to upkeep my scripts forever at work. I only have one if -clause that terminates everything I've worked for the past 10 years, I dare them to fire me.
>>
Where can I learn how to code Java in IntelliJ? I downloaded it, got it running, downloaded AndroidSDK, JavaSDK, etc etc but I don't know what this stuff means/what to do. Is there something in the sticky that can help?

baka desu senpai pls /g/ pls help.
>>
>>51853733

Wrong.

And also, its %c not %s
>>
>>51853920
I think the meme'd version he posted is supposed to use %s. Although, with %s it segfaults, which is perfectly acceptable for this thread :^)
>>
>>51853866
Search youtube for "how to make an app in android studio"
>>
File: 666.jpg (8 KB, 250x250) Image search: [Google]
666.jpg
8 KB, 250x250
>>51846864
>were
>implying I still ain't
>>
made copies of everything until i found out how to use pointer
>>
>>51847015
>nowadays I know big o notation
jesus, did you learn about computers like a month ago? thats some intro intro level CS
>>
>>51849283
broken
>>
>>51853733

Do you see a newline anywhere? Faggot
>>
>>51846864
I made an infinitely looping memory leak and didn't realise till it started chewing through my swap.
>>
>>51846864
I started programming in middle school with Apple Basic, so pretty fucking terrible.

All I did was edgy countdowns.
>>
I can remember when programming simple console games using Borlands conio.h was the shit.

I do wish I kept my shit projects, would be worth a laugh.
>>
>>51846864
I wasn't too bad at programming itself when I started. It just sort of clicked with how I think.

The thing that makes me weep looking back on my beginning was my ego and how I'd convince startups to hire me even though I had only been at it for a few months. A lot of that code is still out there in the wild. I live in constant fear of the day when I'm called in to fix one of those things when it inevitably breaks down.

Imagine legacy code built by someone with only 3 months of university Java class. Built in JavaScript (because they're pretty much the same, right?) I still go to some of the sites that I've built every now and then, hoping they've been replaced, or at least fixed for God's sake, but they rarely are. I charged a lot too. I'll carry this guilt for the rest of my life.
>>
>played RO in my teens
>wanted to bot
>learned how to write bots
>wanted to bot more
>learned how to write macros
And then college hit, aced everything.
>>
>>51849276
He didn't say it, he typed it.

:^)
>>
I don't know. I'm new to programming, but my code isn't nearly as bad as a lot of this. Or it is and I just can't see it yet.
>>
i started learning programming now ,
i'm now really bad , but it goes well.
do you have had the same guys ?
>>
>>51856116
Practice is all you need. Look through code or solutions from others, look what they did and how it differs from your code, and then think why they did it that way. Often it's easy to see why yours is better or (most of the time as a beginner) worse.
>>
>>51856066
>it is and I just can't see it yet.
It's this one. And that's how it will be for a long time to come. The worst programmer on your team will always be you from a few months ago.

You're at the point where everything's super hand holdy and nice, but you're about to be able to see just how deep the rabbit hole actually goes. As long as that doesn't end up scaring you off, you'll be fine.
>>
>>51856182
What will come next?

The biggest thing I'm having trouble with is memory management. I can use pointers and references and work with heap memory, but its just not fully natural yet.
>>
>>51853866
Don't start programming in an IDE like I did. You won't learn any of the things the IDE does for you and treat it like black magic. Start off with just a text editor, javac and java.
As for your actual question, Java is one of the most popular languages, you can learn it pretty much everywhere. Google "Java course", or go to your local library and get yourself a book, they definitely will have something.
>>
>>51849408
HAHAHAHAHAHAHAHHA
>>
File: calculated risk.gif (172 KB, 554x390) Image search: [Google]
calculated risk.gif
172 KB, 554x390
>>51849408
Sure, sure. What if you want to redefine two later? You gotta think ahead about those things. Promotes maintainability.

>>51855699
Hey, man, free market. Also, your crappy programs have apparently lasted YEARS!
>>
Nothing resembling the meme. If your mind tends to go straight to manually inputting each individual step when the task is repetitive, you should really ask yourself why we have programming to begin with.

I've seen some pants on head retarded learners, though.

>tried to calculate a percentage through some convoluted shit; didn't even know what she was trying to accomplish (she was wrong, either way)
>algorithms got ridiculously stupid, like trying to plug in an integer reached by her terrible math rather than the variable
>continued pumping out broken algorithms and broken math that produced incorrect output
>clearly couldn't keep track of what was going on, and just gave up
>comments? what are those?
>formatting? what's that?
>despite this, wanted to be a group leader, trying to organize and direct what we were doing

IQ in the double digits detected.
>>
>>51850270
>>51850553

The fizzbuzz meme will actually reach the next level when we start writing well coded programs that write poorly coded fizzbuzzes
>>
>do programming challenges as a noopb
>mfw exhaustive search everywhere, not a single algorithm faster than O(n^4) was found
a-at least I'm starting to m-make it
>>
>>51846864
i'm still terrible and i only need to know c# for my job
>>
>>51856681
Was she hot?
>>
>>51856760

Nope. She was a nigress.
>>
>>51856765
did she end up failing?
>>
>>51856782

Not on account of the group project, but probably.
>>
Hashing the passwords in the browser so the plaintext password would not be sent.
I was 13 at the time.
>>
File: k4dcfth.png (167 KB, 600x590) Image search: [Google]
k4dcfth.png
167 KB, 600x590
>>51846864

I'm afraid I'm still bad.
>>
function checkIfTrue(x)
if x then return true
else return false
end
end


Apparently this is a common 'problem' for new programmers to 'solve'.
>>
>>51856818
that's actually better than sending plaintext passwords over http
it's not exactly secure, but at least someone sniffing the traffic won't have the actual password, which could potentially be used to access other sites as well.
you'd still have to hash server-side, of course.
>>
>>51846890
I always opted to make tuples/lists and using flow control to check if the values were IN the list as opposed to what you did there. It seemed more efficient.
>>
>>51856882
Nevermind this.. thought that was something else.
>>
double Average(double x, double y)
{
return ((x+y)/2);
}


If only I'd known then just how bad this code was.
>>
>>51856910
>just how bad

because you wrote a method just for that?
>>
>>51856910
To be honest, I don't understand what's wrong with that.
It's easy to read and having a function that does a job is usually better than writing inside a body because you can re-use that instead of copy-pasting.
>>
>>51856938
>method
javafag get out
this is c territory

>>51856953
The problem isn't what I did, the problem is how I did it.
In certain use cases, (x+y)/2 will cause an overflow, while other ways of writing an average function will not. Thus the code is shitty.
>>
>>51856960
>javafag get out
>this is c territory

C functions are written in lowercase though. That could very well be Java or even C# I'd assume.

>In certain use cases, (x+y)/2 will cause an overflow, while other ways of writing an average function will not. Thus the code is shitty.

Do you really work with numbers that big? Or am I missing something?
>>
I started out with VBScript. I once made a Lord of the Rings quiz entirely out of Message- and InputBoxes. I also had a VBS in my Startup folder that would query you for three passwords. It would literally just open up an InputBox, then another, then another. Yes, you could absolutely ignore it. Sadly I lost those scripts.

Next I learned BlitzBASIC which was aimed at kids learning how to make simple games. Those programs are also lost to time. They were pretty decent in terms of variable names and whitespace, but I didn't optimize at all and often didn't use loops, copypasting large sections of code. Still no documentation and almost no comments. Horrible.
>>
>>51856998
>C functions are written in lowercase
C functions are written however the programmer wants to write them. There's no one way it must be done.

>Do you really work with numbers that big? Or am I missing something?
The whole point is that there are certain use cases (really about 49.97% of all possible use cases) in which the code will break when there is better, but still simple, code that will not break.

It's also an old /dpt/ meme.
>>
>>51857059
>C functions are written however the programmer wants to write them. There's no one way it must be done.

No, the convention is that. Breaking the convention is just weird, why would you do that?
>>
>>51857090
Because I'm a big boy and I do what I want.
I mean really you're going to pick apart my capitalization scheme but not my indentation scheme? I figured that indented braces would trigger half the board.
>>
>>51852269
I, j and k are notations in math for x, y and z directions. But who really cares, indexes can be one letter.
>>
Here's a little gem from my first week learning C.
>>
>>51857125

It looks weird reading capitalized or camel case code in C when everything is written in lowercase and using underscores. I assumed you were a newbie.

Didn't notice the braces, but one might think it's a copy/paste error.
>>
>>51857156
Apart from using strncpy to copy one character, it's not all that funny. Looks very good for someone who's been programming for less than a week.
>>
>>51857156
void reverse(char *string, int len){
if(len<1) return;
char temp = *string;
*string = string[len-1];
string[len-1]=temp;
reverse(string+1,len-2);
}
>>
>>51857197
strlen returns the length of a string not counting the null byte, he's subtracting one from that
there's no need to check if every number up to a given number is divisible by that number to determine primeness
also checking if it's not equal to itself is a condition that will never be true
>>
>>51857197
You only have to count up to and including the square root of a number to check if it's prime. For every divisor below a number's square root there must be a corresponding divisor above the square root.
>>
>>51857241
>there's no need to check if every number up to a given number is divisible by that number to determine primeness
I do realize that, but it's definitely not in the funny category.

>strlen returns the length of a string not counting the null byte, he's subtracting one from that
Missed it. But, honestly, not something to laugh at.
>>
>>51857237
void strrev(char *str)
{
int i = strlen(str) - 1;
int j = 0;
char c;
while (i > j)
{
c = str[i];
str[i] = str[j];
str[j] = c;
i--;
j++;
}
}
>>
>>51857321
Recursive functions are the one true path to salvation.
>>
>>51857328
i'd rather have readable code than play code golf
i bet you advocate for that autistic XOR swap meme
>>
>>51851547
iteration or index
>>
>>51857059
Would dividing x and y by two before adding them fix the overflow error?
>>
>>51851547
it started in FORTRAN. If I remember right, the registers A-Z were put in different type section. The section for the integer started with i.
>>
>>51851912
red -> green -> refactor

its better to have dirty, but working, code than to have elegant but non-working code. but that's not the end of the line, bud
>>
>>51857338
>XOR swap meme
That actually performs worse on modern CPUs, anyone that suggests using it these days is an idiot.
>>
>>51858129
>performance affecting your decision
>>
File: devilish3.gif (2 MB, 425x481) Image search: [Google]
devilish3.gif
2 MB, 425x481
>>51858059
...kαι μόλις έχασες τη δουλειά σου...
>>
>>51853677
Isn't that just an infinite loop?

>while(1){
>//whatever }

Do infinite loops have any application? I've only written meme programs.
>>
>>51858392
>What is a semaphore
Yes they have many applications.
>>
>>51858392
yes, and you can always "break;" out of it when you want to
>>
>>51848541
That's a number and a word!
>>
>>51848487
>>51853586
int main()
{
char *s = "string";
while (*s != '\0')
putchar(*s++);
putchar('\n');
}
>>
>>51858392
Most embedded systems will have infinite loops somewhere, the idea being you just remove the power when you want to reset the device.

Heck, most operating systems will have an infinite loop in the process management code somewhere.
>>
>>51856853
function checkIfTrue(x)
return x
end
>>
>>51858768
Except for Windows. If the cycles are used up, it throws a bluescreen.
>>
>>51846864
Not very. And I was 8 when I started. I think the same is true for the great, great majority of us. Typically, your pic is what happens when you let first-bumpers program. Second-bumpers typically grasp variables, loops, recursion, assignment, and conditionals literally instantly because, well, they're extremely obvious concepts. For everything else, there's experience.
>>
>>51858129
How about this:
a = (b += a -= b) - a;
>>
program sirene;
uses crt;
var x:integer;


begin
x:=0;
while x<2000 do
begin
x:=x+10;
sound(x);
delay(250);
nosound;
end;
readln;
end.


Can't find anything earlier than this. Probably too short to make many mistakes. I just got through other, newer code and saw that I didn't get into arrays for quite some time.
>>
>>51856998
>C functions are written in lowercase though. That could very well be Java or even C# I'd assume.

Actually you're both wrong, the conventions for C, C# and java all have functions/methods starting with lowercase letters.

Also brackets around the return statement serve no purpose, 100% triggered.
>>
>>51846864
I used plenty of goto, I'll tel l you that much.
>>
for (; true; ) {
// whatever
}
>>
>>51859444
Arduinos actually use this in their loop() function.
I have no idea why the fuck they don't just use while(true)
>>
>>51859444
boolean ever = true;
for (;ever;)
{
// whatever
}
>>
I'm terrible at math. Can I study programming?
>>
>>51859748
unless you're programming mathematical things, you don't really need a lot of math to do programming.
>>
>>51849020
>mysqli
>still does SQLi
>>
File: 12345447.jpg (81 KB, 610x689) Image search: [Google]
12345447.jpg
81 KB, 610x689
>>51859444
>>51859739
>using "for" loop for anything other than index based iteration
Why experienced programmers do this is beyond me.
>>
>>51859748
You don't need math just good logic and problem solving skills.

design patterns are also important.
>>
>>51859658
You should always use For loops when possible, and seek to transform While loops into their For equivalents.

That's what most senior engineers have told me on the subject, across many larger and smaller projects and organizations.

Never got a concrete reason. Seems cargo cultish. Or based on some ancient platform requirement.
>>
>>51859809
That's because you have yet to correctly implement fizzbuzz even once.
>>
>>51859809
If you do
for (;;) { do_stuff(); }
, it can be faster than doing
while (1) { do_stuff(); }
by an unnoticeable amount, assuming the compiler doesn't just optimize the while to unconditionally jump anyway.
>>
>>51859774
>>51859829
Oh shit. So it's possible for me to do then.
>>
>>51859748
no, literally impossible
>>
>>51859809
for is more flexible than while
>>
>>51859992
Oki
>>
>>51858794
The correct answer is to delete the useless function
>>
When I first started programming, I was given examples in Python where variables were only given single character names. So, for my first assignment I used every letter in the fucking alphabet for every variable cause I didn't know it could be a string.

I cringe every time I think about it.
>>
>>51860011
You could learn web development; that's basically "programming light" and doesn't need math. If you just want to get a decent paying job that involves computers, however, it would be a better idea to go into IT.
>>
>>51859939
>by an unnoticeable amount
When doing kernel development, trivial costs are still worth pursuing.

>assuming the compiler doesn't just optimize the while to unconditionally jump anyway
Linux uses a lot of nonstandard hacks, and turning on optimization prevents the kernel from compiling.
>>
>>51860107
Backend web dev is similar to any 'proper' programming task you might do.

If you're on about HTML, CSS, JavaScript then you've got a point.
>>
I used global variables in python to access stuff defined inside functions instead of just returning
>>
>>51857699
Yes
>>
>>51857125
Well when mr big boy gets a job and has to follow coding standards like the rest of us, I hope you don't exercise your big boy rights to write whatever you want.
>>
>>51859858
>You should always use For loops when possible, and seek to transform While loops into their For equivalents.
Whenever possible, your code should do exactly what it's supposed to do and nothing else. To foster this, every component of a program's control flow should be as obvious and clearly defined as possible. Further, every assumption and mechanism you use should be programmed, and should be programmed in the most constraining way possible. You the programmer should make unintended behavior as difficult as possible.

This is why if you have a function doSomething that takes a string, returns an integer, and doens't change the object's state, you should use
int doSomething(const std::string& thing) const {/* code */}

instead of
int doSomething(std::string thing) {/* code */}


For loops have a defined beginning, a defined increment, and a defined endpoint. You can see these definitions in the first line of the loop. A while loop only has a defined endpoint. You have to look elsewhere for the increment and beginning, and that means it's more likely that mistakes will creep in without your knowledge.

As the size of a project increases, the importance of constraining scope becomes greater. For large, multi-team projects with revision history going back over a year, constraining scope is the single most important part of the job. Further, regardless of project size, a smaller scope is ALWAYS better than a larger one: the less things the programmers have to think about at any one moment, the less likely they are to make mistakes.
>>
>>51856711
This is pretty sloppy/terrible but I wanted to give it a shot
#include <stdio.h>

int main()
{
char arg[5];

printf("#include <stdio.h>\n\n");
printf("int main()\n{\n");
for (int i = 1; i <= 100; i++) {
sprintf(arg, "%d", i);
printf("\tprintf(\"%s\\n\");\n",
i % 3 == 0 && i % 5 == 0 ? "fizzbuzz" :
i % 3 == 0 ? "fizz" :
i % 5 == 0 ? "buzz" : arg);
}
printf("\treturn 0;\n}\n");
return 0;
}
>>
>>51846864
>be 18
>never programmed in my life
>enroll in EE
>programming 101, uses C
>first practicals are string manipulation, arrays, linked list and other basic shit
>so far so good
>get to hash table practical
>ehhh, this is getting pretty tricky
>after like a month introduces C++
>can't wrap my head around OOP. What the fuck are objects? What's a class? Why is it a "blueprint" and for what? What the hell do you do with a constructor?
>final practical is make your own Paint-like drawing program (different practical for everyone)
>COMPLETELY lost on how to tackle it
>drop out

Then I enrolled in CS 2 years later and breezed through it. C# is a much better language to start out with for teaching core concepts.
>>
>>51859809
I had a friend in high school who would abuse for loop syntax for whatever he wanted just because he knew how.

I wish I could remember the context, but at one point he did something like this:
for (foo; bar; baz);

because baz was the only statement he needed to iterate.
>>
>>51860347
It's literally the same as writing fizzbuzz with the extra of writing itself as the CS grad.
from sys import argv

def main(limit):
filename = "Fizzbuzz_up_to_%d" % limit

wfile = open(filename, "w")
wfile.write("#FizzBuzz up to %d in Python\n" % limit)
for num in range(1, limit):
if(num % 15 == 0):
wfile.write('print "FizzBuzz"\n')
elif(num % 3 == 0):
wfile.write('print "Fizz"\n')
elif(num % 5 == 0):
wfile.write('print "Buzz"\n')
else:
wfile.write('print %d\n' % num)

wfile.close()

if __name__ == '__main__':
if(len(argv) == 2):
main(int(argv[1]))

>>
>>51858756
this just prints the string, you know?
>>
>>51858392
try doing something in SDL for a change, anything with an UI has some form of infinite loop
>>
>>51860420
New developers love to programming love writing hacks because it makes them feel clever.

Experienced developers hate writing hacks because it forces them to be clever.

Clever code is bad code. Your code should be as obvious and straightforward as possible; this makes it less likely for your code to break.
>>
Security guy here

>>51860296 knows what's exactly up

Ya'll gotta stop creating unintentional functions.

Related: https://www.youtube.com/watch?v=tUFww-qvbdE
>>
>>51860482
>anything with an UI has some form of infinite loop
Only behind the scenes. UI programming should be event-based rather than procedural. Qt does an excellent job of this; so does Android IIRC.
>>
>>51856052
>using the smiley with a carat nose
kill yourself too
>>
>>51849283
I haven't tested this but I think it will print Fizz when it reaches 15 instead of FizzBuzz because 15 is a multiple of 3 so it stops at the 1st if. Atleast it did for me in python
>>
>>51853809

Holy crap, did you just pluck those var names out of thin air?
>>
>>51860676
Correct.
>>
>>51860689
Just because you're ignorant doesn't mean anyone else is.
>>
>>51857090

Breaking the convention is fine, as long as your are consistent with that breaking within your project.

You're eventually going to have to comply with someone's dumb ass style guide they've been using for decades.
>>
>>51860555
just one word for you, SDL
>>
>>51847459

If you've never wrote ./a.out , then you shouldn't be touching an ide. What the fuck are schools teaching.
>>
>>51860737
In my class we were taught to use GCC in Linux, but for some reason we were taught to do it this way:
$ g++ file.cpp -o test
$ ./test

which is extra fucking likely to confuse the idiots since there's a Bash builtin called "test".

Also, one of my project partners was emailing me because he thought our (read: my) code wasn't working. It turned out that he forgot the -o argument and he was running an older program named ./test in the same directory rather than ./a.out. It took me like an hour to get him to explain what he was doing so I could tell him where he fucked up.
>>
>>51847015
Best shitpost I've seen in a while
>>
>>51859858
I get that you should use a for loop, rather than a while with your own increment variable check.

But if all you want is an infinite loop (maybe with a break somewhere) why would you use a for instead of a while?
Keeping in mind that the for(;;) parameters are just blank anyway.

The first time I encountered for(;;) I had to question why the fuck that even compiled, but it's pretty obvious why while(true) is just an infinite loop.
>>
>>51858892
Looks like UB (assuming C or C++).
>>
>>51858892
a = 0 ?
>>
We use turboc on a 64bit winxp. Though it was bretty cool, fell for the meme now use gnu/linux with Emacs.
>>
>>51846864
I was programming games in delphi by moving the actual TImages in a Timer.
>>
File: 1448648801659.jpg (109 KB, 540x625) Image search: [Google]
1448648801659.jpg
109 KB, 540x625
>first month working as developer
>write some sql like
delete table.* from table, table2 where table.col132 = table2.col21 and table.col = 1

>possible values for col are 1 or a md5 sum so table.col is varchar
>months pass, everything ok
>suddenly some rows that shouldn't get deleted
>turns out mysql casts the column values in the where clause to the type of the parameter - in this case 1
>all rows with values begining with 1 are getting deleted
>mfw
>>
>>51859809
for (;ever;) is obviously a joke
you know, forever?
>>
>>51846864
Was bad, still am, fuck it, I'm switching to math, at least I'm good with probability and stats
>>
int reliableRecieve(SOCKET *sock, char * buffer, size_t bufflen, struct sockaddr_in address, size_t destlen)
{
packet s=packetSet(0,0,0,0,"");
char buffa[MAXPKTSIZE + 1];
packet r = packetSet(0, 0, 0, 0, "");
sendto(sock[0], (char *)&s, HEADERSIZE + strlen(s.payload), 0, (sockaddr*)&address, sizeof(address));
int adrsize = sizeof(address);
std::cout<<"Client recieved "<<recvfrom(sock[0], (char *)&r, sizeof(packet), 0, (sockaddr*)&address, &adrsize)<<" bytes during handshake\n";
std::cout << "Client is expecting " << r.AckValue<<" chunks\n";
sendto(sock[0], (char *)&s, HEADERSIZE + strlen(s.payload), 0, (sockaddr*)&address, sizeof(address));
int packetsNum = r.AckValue;
>>
>>51846864
I got a C in my C++ class.
I don't remember anything anymore.
>>
>>51865176
> <language> class
What kind of shit heap schools are out there that waste time on this? Once you've learned how to program in one language, you should be expected to pick up others on your own time as needed.

Universities should not teach tools. They should teach processes and concepts.
>>
>>51865623
>Universities should not teach tools

university is basically considered job training now, since it's a prerequisite to most non-menial work.
>>
>>51865704
Enjoy staying a wage slave for life.
>>
>>51849447
Also if ur salted urls ever get a collision u just can't change it, with an id u can try again
>>
>Be 14
>Just learned how to make simple programs
>Think I'm the shit because I can write a program that does a basic hash on a file (I think it was CRC32)
>Find some people online who are looking for a programmer to help develop something quickly. It wouldn't pay but I could put it on my resume
>Send in my collection of "awesome" simple programs
>Never hear from them again
I was genuinely confused at the time. Now I'm reading the code I gave them and I'm cringing. Thank god I didn't give them my real name.
>>
>>51856910
#include<iostream>

constexpr double sum() noexcept
{
return 0.;
}

template<class... Args>
constexpr double sum(double x, Args... args) noexcept
{
return x + sum(args...);
}

template<class... Args>
constexpr double mean(Args... args) noexcept
{
return sum(args...)/sizeof...(args);
}

int main()
{
constexpr double x=mean(1.123,3.2123,6.2123);
std::cout << x << std::endl;
}
>>
>>51858944
>Actually you're both wrong, the conventions for C, C# and java all have functions/methods starting with lowercase letters.
Not C#.

>Do use Pascal casing for all public member, type, and namespace names consisting of multiple words.

https://msdn.microsoft.com/en-us/library/ms229043(v=vs.100).aspx
>>
>>51846864
I once made a terminal program in c#, each line was a label and I didn't even use an array to index them, each label was named aa, ab, ba, bb etc...I think you can imagine how long the moveUp method was, there was around 30 lines in total and it was amazing
>>
>>51866353
>New averaging method
>>
>>51847734
the '=>' is ruby you meant '->'
>>
>>51856953
The function could accept valid inputs but break and cause an invalid output.
In fact, any input in which (x+y) results in a value over INT_MAX would cause an overflow and thus invalid output.
>>
>>51860532
An exception to this would be optimizing at the end of the development process.
Just leave the original, clearly legible code in a comment and write your hacky, super efficient and unreadable cleverly optimized code below it or something.
>>
I didn't know that string is array/chain of chars
>>
>>51866692
And in some languages char is just an array of bytes.
>>
>>51866702
yup
>>
>>51865623
It was an Intro to CS class. I'm just calling it a C++ class because that's the language we focused on.

I remember pseudo code and control structure and that stuff, but if you ask me to write a C++ code right now, I wouldn't be able to do it.
>>
>>51866702
>And in some languages char is just an array of bytes.
You mean a char is an array of bits? Or do you mean a string is an array of bytes?

A char is a byte (in most sensible languages at least)
>>
>>51847462
>not looping over string1[i]==string2[i]
And we're actually doing this for college projects sometimes, because "no libraries except stdio.h allowed".
Thread replies: 255
Thread images: 19

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.