[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip / qa] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology

[Advertise on 4chan]


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 1617407562965.jpg (557 KB, 2000x1530)
557 KB
557 KB JPG
/dpt/ thread

Prev:: >>81042170
>>
Finally a good OP
What are you working on, /g/?
>>
>>81048470
>>81048488
i hate this image with a passion. id rather have the scuffed haskell
>>
>>81048488
What does "UTFUT(ε_{TFX})" mean?
>>
I'm not working on anything.
I'm just wasting my life away.
>>
>>81048502
You should be able to solve this.
>>
>>81048498
What's the matter anon? Don't want the pretty ladys address?

You gonna
63 75 6d?
>>
File: maki.jpg (105 KB, 1280x720)
105 KB
105 KB JPG
>>81048503
Work wastes your life away too
>>
>>81048506
I can see what it does, but I want to know what the definition of the operation is.
>>
>>81048534
>lady
i will never 63 75 6d to such a horrid creature
>>
File: 1119394646.jpg (63 KB, 709x765)
63 KB
63 KB JPG
>>81048540
>everything wastes your life away
>you are literally dying sitting here typing this
>>
>>81048591
Not everything, just everything you're doing
You can avoid wasting it away by having friends and a wife and social life
(obviously nobody here is ever having that)
>>
>>81048565
NGMI
>>
>>81048598
>obviously nobody here is ever having that
Exactly, so next best thing is working. As long as you enjoy it, if you don't then you're really just a miserable bastard
>>
>>81048608
Need money to live
>>
>>81048614
Unless you live in a socialist hellscape, yes.

Whats your preferred language anon?
>>
>>81048641
日本語
>>
>>81048488
algorithm
>>
>>81048671
кpacивый
>>
File: crypto-cli.png (530 KB, 1904x2652)
530 KB
530 KB PNG
Go CLIs are so comfy
>>
#include <>>81048673>
>>
File: 1614027986618.webm (2.26 MB, 560x1000)
2.26 MB
2.26 MB WEBM
which one is more aesthetic? please respond

if num in dicts:
dicts[num] += 1
else:
dicts[num] = 1


(or)

if num in dic:
dic[num] += 1
else:
dic[num] = 1
>>
>>81048753
kys k-cuck
>>
>>81048753
Neither
>>
>>81048753
if cum in dic:
dic[cum] += 1
else:
dic[cum] = 1
>>
>>81048701
Who is this semen demon
>>
>>81048817
https://en.m.wikipedia.org/wiki/Jennie_(singer)
>>
alright I just created an empty C++ project in visual studio, now what?

I'll just let you know right now that I don't know anything about computers
>>
>>81048889
Start writing code.
>>
>>81048889
How old are you?

If you're over 15 and know nothing about computers honestly just quit now.
>>
>>81048889
Going off the OP I would say the next step is cutting off your penis
>>
File: komputah.jpg (58 KB, 640x480)
58 KB
58 KB JPG
>>81048889
>>
>>81048470
doing every exercise from htdp 2nd edition
>>
I was a script kiddie until I was 15. For the past 10 years I've regretted not staying the course and studying CS.

Currently learning Python.
>>
>>81048753
in tcl this is just
dict incr dic $num
>>
>>81048970
>was a script kiddie
>Currently learning Python

Still are bud
>>
File: handholding.jpg (132 KB, 869x523)
132 KB
132 KB JPG
should languages forbid users from potentially making stupid mistakes?
do you like nanny programming languages?
>>
Is there some like https://python-gtk-3-tutorial.readthedocs.io/en/latest/ for pyqt5? I don't want to read the official docs they are kinda crap and never work in the way I except them to.
>>
>>81048992
Yes.
>>
File: 1617725986043.gif (1023 KB, 264x320)
1023 KB
1023 KB GIF
>>81048992
>common core kids are now making decisions in computer language design.
>>
should you write
var data = CreateMessage(user);
SendData(data);


or

SendData(CreateMessage(user));
>>
>>81048992
swift or bait?
>>
>>81049017
Second one, assigning variables unnecessarily is a waste
>>
>>81049018
an anon yesterday mentioned a language called Pony, so today I was reading about it.

https://tutorial.ponylang.io/expressions/ops.html
>>
>>81049031
In Pony, unary operators always bind stronger than any infix operators: not a == b will be interpreted as (not a) == b instead of not (a == b).


Absolute degeneracy
>>
>>81048992
It should be a compiler warning. That way it will stop you from making mistakes, or you can turn it off if you want to program that way and trust yourself not to make mistakes.
>>
>>81048992
In J, this is just
   1 + 2 * 3
7
3 * 2 + 1
9
>>
File: Untitled.jpg (20 KB, 347x285)
20 KB
20 KB JPG
>>81049031
quite based desu
>>
>>81049155
>x = b + c*d is ambiguous
>x = y = x isn't
Luckily this language won't be used for anything.
>>
>>81048693
>dashes in flag names
stop this
>>
>>81049056
But that's how it should be.
>>
File: 1292688448963s.jpg (3 KB, 126x126)
3 KB
3 KB JPG
>>81049183
>implying I ever use those instead of the single char aliases
>implying this isn't meant to be run as a cron job when it's finished
>>
>>81049174
I guess it's because it doesn't like mixed operators.
for example
x = b * c * d

compiles
>>
>>81049220
stop putting dashes in flag names
>>
>>81049239
What should I put instead? Little dick emojis?
>>
>>81048992
This is funny because Haskell will warn you if you use unnecessary parentheses.
>>
why do examples always look so easy then real code is completely unintelligible...
>>
>>81049266
>haskell will warn you if you try to make your code more readable
kek.
>>
>>81048470
Why his hand is so big.
>>
Should I learn C or C++? I'm not sure what I wanna do in the future, but I'm thinking about learning some reverse engineering for fun, and I also want to be able to transition into C# if needed (for work). I already know Python very well, and have touched Golang/Java (in addition to webshit, including JS).
C is just a subset of C++, correct? So why not just learn C++?
>>
File: 1601416911394.jpg (108 KB, 634x1541)
108 KB
108 KB JPG
>>81048470
wow, she looks just like me !!
>>
File: 1617579868121.jpg (60 KB, 567x588)
60 KB
60 KB JPG
Is there any difference between a local variable and a bound variable or are they pretty much the same thing? Could formal parameters be considered local variables?

(pls don't bully)
>>
any nix magician knows how to force clang's stdlib instead of gcc's in flakes?
currently I have this
devShell = pkgs.mkShell.override
{ stdenv = pkgs.llvmPackages_11.stdenv; }
{ buildInputs = with pkgs; [ cmake ninja ]; };

it does make clang as the default compiler and shit, but it still uses /nix/store/<hash>-gcc-10.2.0/include/c++ unfortunately
>>
>>81049493
>C is just a subset of C++, correct?
Practically yes. There are silly edge cases that are different that autists will bitch about but they don't matter in the real world.

>So why not just learn C++?
If you aren't smart enough to learn C++, you can learn C instead. Otherwise there is no reason.
>>
>>81049493
it's a pure ideological/political choice
>>
>>81049493
are you mtf or ftm?

>>81049511
how long have you been on HRT?

>>81049514
that code doesn't look very trans-friendly
>>
>>81049520
>>81049531
Guess I'll go with C++ then.

>>81049534
I'm mtam (male to alpha male).
>>
What's even the point of this thread.
>>
>>81049155
whats special about this?
>>
>>81049552
To show our support for the trans community, dummy!
>>
>>81049558
this pretty much >>81049174
without remembering how a language behaves it's hard to imagine its behavior.
In C both variables would have the same value, for example.
>>
>>81049552
only by responding to this thread can you express your disgust with Richard Stallman and his army of transphobic Stallmanites
>>
File: 1608646274895.jpg (90 KB, 883x883)
90 KB
90 KB JPG
>haven't written a single line of code in a week
holy fuck i feel disgusting
self teaching is cool and all, but it's very easy to end up in a lazy stint due to the lack of pressure
SHEEEEESH
>>
>>81049558
Needing a tmp variable to swap 2 variables is boomerprime. Glad they went with that design
>>
>>81049594
>what is x,y = y,x or (x,y) = (y,x) or [x,y]= [y,x] or std::swap(x,y)
>>
>>81049514
nvm, fixed it
>>
>>81049367
>not memorizing operator precedence
EAT A GUN NIGGER, SERIOUSLY, EAT A GUN
>>
>>81049625
uhhhhhhhhhhhhhhhhhhhhhhhhhh, excuse me, watch your mouth, this is a thread for trans and their allies INCLUDING african-americans
>>
>>81049625
a & b + c * !d && e ^ f++ == 7 >> 3

please do the needful
>>
in haskell this is just
:i <operator>
>>
at this point, will we even get libc++20 support by 2023?
std::format is still not in clang!
>>
>>81049762
In C this is just
sprintf
>>
>>81049776
you misspelled shit
>>
>>81048982
After Python, what do you recommend?
>>
File: 1604205223692.png (140 KB, 351x334)
140 KB
140 KB PNG
>>81048992
>learning the hard way is no longer an option
>>
>>81049762
>std::format
Just use fmt, they aren't implementing it as it's being expanded in C++23.
>>
Is there memory safe languages without garbage collector other than Rust? Something simple and easy to use.
>>
>>81049863
whats wrong with a garbage collector?
>>
File: 1608262368330.png (44 KB, 359x346)
44 KB
44 KB PNG
cool they're multiplying
>>
>>81049863
>Is there memory safe languages without garbage collector other than Rust?
Yes.
>Something simple and easy to use.
lol no
>>
>>81049863
ada, SPARK, ATS
>>
File: 1597815415541.png (75 KB, 210x240)
75 KB
75 KB PNG
>>81048992
it's usually the same niggers that use IDEs, language servers, lints, and another 15 basedftwares that crawl the whole file or code base with every character input.
You're seriously telling me they can't just have one of those programs pretty print the precedence rules on demand?
>>
File: 1616873588424.png (291 KB, 600x512)
291 KB
291 KB PNG
what actually is WinRT? am I supposed to use it in place of win32? it sounds more restrictive than win32, is it only supposed to be used with that retarded UWP shit?
>>
>>81050064
>it's usually the same niggers that use IDEs, language servers, lints, and another 15 basedftwares that crawl the whole file or code base with every character input.
you mean productive programmers?
>>
>>81048693
stop using font ligatures.
>>
What the fuck is the point of everything?
Grinding Leetcode so that I get a job at a company that I talk shit about on a daily basis, only for some more money and the fact that my retarded neckbeard friends will respect me more? Nah.
Creating some shitty personal project knowing that almost everything has been done and I lack the resources to do something decent? Also who the fuck needs another browser, React library or music player, really?
Learning language #3543534 that is the same as the shit before with different syntax and some annoying high-level concepts that could be done by a library anyway?
Everything fucking sucks, lads. Programming is shit.
>>
>>81050360
all jobs sucks or people wouldn't pay you for them.
>>
>>81050064
People who have never went beyond 2000 loc codebase think you can live without these tools lol
>>
>>81050360
nobody is forcing you to do the programming. if you don't enjoy problem solving (i'm not talking about leetcode here) or creating stuff with it, don't do it, you're just wasting your time.
>>
How do you turn off Rust's standard prelude entirely?
>>
Writing a scheme interpreter in rust. My first rust projects, so progress is slow.

>>81049590
Go write code NOW!
>>
>>81048753
just do a monad bro
class Maybe():
def then(self, x):
return self.bind(lambda _: x)

class __Nothing(Maybe):
isNothing = True
def bind(self, _):
return self
Nothing = __Nothing()

class Just(Maybe):
isNothing = False
def __init__(self, x):
self.value = x

def bind(self, f):
return Just(f(self.value))

def guard(b):
return Just(None) if b else Nothing

def fromMaybe(alt, mX):
return alt if mX.isNothing else mX.value

def executeAction(x):
x()
return None

def foo(num):
def firstSet():
dicts[num] = 1
def increment():
dicts[num] += 1

executeAction(fromMaybe(firstSet, guard(num in dicts).then(increment)))


Then, for example
In [2]: dicts = {'a':1,'b':2,'c':3}

In [3]: foo('d')

In [4]: dicts
Out[4]: {'a': 1, 'b': 2, 'c': 3, 'd': 1}

In [5]: foo('a')

In [6]: dicts
Out[6]: {'a': 2, 'b': 2, 'c': 3, 'd': 1}
>>
if you are not directing 10% of your salary to at least one hololive member, what the fuck is it for?
>>
whats the best book to learn elixir?
>>
What program should I code today (as a millionaire)
>>
>>81050639
Alchemy & Mysticism 1st edition
>>
>>81050259
>>81050406
>missing the point entirely
>>
>>81050504
https://doc.rust-lang.org/1.30.0/book/first-edition/using-rust-without-the-standard-library.html#using-rust-without-the-standard-library
>>
File: 1613572036056.png (193 KB, 983x1113)
193 KB
193 KB PNG
>>81048470
>>81049379
based
>>
File: hmm.png (1.14 MB, 478x835)
1.14 MB
1.14 MB PNG
I made a simple math-game to learn a bit JS. Every time a level is finished basically this function is called which based on player difficulty and level checks calls another function with fixed parameters to create new calculations to solve. My question is how this could be shortened or made better. I switched already from if else to switch cases. I am pretty new to programming so nothing to complicated/abstract please.
>>
>>81050794
you could use closures to remove some of the repetition, but honestly it would be a waste of time. it's fine.
>>
>>81050794
make an array of arrays of functions executing the code of each of these cases
and then simply
levels[player_data.difficulty][player_date.current_level]
>>
>>81049590
on the dpt discord, we incite each other to code all day everyday.
>>
how to print colored output in C++? \e is not a a stadard escape sequence
>>
>>81050621
for the X
>>
>>81050406
i remember a blog post from a microsoft developer explaining how he was using vim to develop visual studio. lel.
>>
hasukeru
https://www.youtube.com/watch?v=2HVrFBYVNkI
>>
https://twitter.com/awesomekling/status/1379917402784292864

https://twitter.com/awesomekling/status/1379917402784292864

https://twitter.com/awesomekling/status/1379917402784292864

OH NO NO NO NO
>>
>>81050894
/ourlad/
>>
>>81050855
ANSI escape sequences
you can also use ncurses
>>
>>81050855
platform specific, linux has its color codes, no clue how it works on windows.
>>
>>81050917
ah okay that's why \e is not standard. thanks i just wanted to know to turn off the annoying warning
>>
>>81050936
apparently ANSI escape codes were added to windows by accident when they were making WSL.
>>
>>81050855
There is no such thing as "colored output". c++ only outputs text to a buffer then the terminal reading that buffer may add color or not.

Windows 10 terminal supports color codes.
https://docs.microsoft.com/en-us/windows/terminal/customize-settings/color-schemes
>>
File: 1593743097953.png (45 KB, 540x52)
45 KB
45 KB PNG
>>81050885
>>
File: pkmn.png (48 KB, 1499x411)
48 KB
48 KB PNG
Is it possible to do something like method overloading so that I don't need to enter a second type for the pokemon?

I tried making another constructor beneath the one I have (which doesn't require the type2 argument) but that didn't work.
>>
rust
>>
>>81051085
Try putting it above, it should just work.
>>
>>81051085
Type shouldn't be a string.
>>
>>81051159
neither should sex
and also probably not catchLocation
>>
>>81050970
ANSI has been legacy in windows for like 2 decades now, everything is UTF-16
>>
>>81051090
tranny
>>
>>81051178
I didn't notice sex, but catch location may be too difficult to calculate on demand, especially if he allows trading across games (where it would instead say the other players name).
>>
>>81048470
Why would Ubuntu just suddenly start to prompt for passphrase when committing? Hasn't asked before, worked earlier today.
>>
>>81050855
segregation is over anon, you can print the same output as everyone else now
>>
>>81051046
I'll finish Xenoblade Chronicles someday.
>>
>>81048470
seems like they could eliminate about 90% of the shitposting in these threads if they just deleted offtopic OPs
>>
>>81051258
>when committing?
pushing, you mean. could be a ssl failure of the server you are pushing to.
>>
>>81051152
>>81051159
>>81051178

I'll try all of these, thanks.

Pardon my ineptitude but I've only ever used String to enter actual words. Is there an obvious answer I'm missing?
>>
>>81051216
no, rust
>>
>>81049808
C++ to scare you straight.
>>
>Q: What does end of support for Python 2.7 mean?
>A: Starting July 15, 2021, Lambda will no longer apply security patches and other updates to the Python 2.7 runtime used by Lambda functions, and functions using Python 2.7 will no longer be eligible for technical support. In addition, you will no longer be able to create new Lambda functions using the Python 2.7 runtime. Starting September 30, 2021, you will no longer be able to update existing functions using the Python 2.7 runtime. These changes are in accordance with our runtime support policy [5].
https://aws.amazon.com/blogs/compute/announcing-end-of-support-for-python-2-7-in-aws-lambda/

t-thanks? Trillion dollar company and it can't maintain the shit they deploy. So as soon as there's a bug that needs fixed in our code we're fucked. Lesson learned: don't use lambda, it's made by retards.
>>
>>81051327
Wrong lesson. Correct lesson is: don't use python.
>>
>>81051339
Wrong lesson. Correct lesson is: don't use AWS
>>
>>81051327
Python 3 came out in 2008, you've had enough time to update.
>>
>>81051353
Wrong lesson. Correct lesson is: cloud is just codeword for someone else's computer.
>>
>>81051270
couldn't have a more fitting op
>>
>>81051299
Using strings to represent words is fine. The problem is there is no constraint on the values of those strings. I could create a Pokemon like this:
new Pokemon("myPoke", 1, "not a real sex", "not a real location", false, "not a real type", "also not a real type)

This pokemon is complete nonsense. It's very likely to lead to bugs later because you haven't constrained the values each property of the pokemon can take on. You can fix this by representing sex & type as enums, and by representing catchLocation with a custom Location data type.

3 words: correctness by construction. Try to write programs so that if it compiles then it maintains key invariants.
>>
>>81051385
Python3 is still unstable to this day and I still rely on python2-only (expert) packages (not deprecated ones either, the last update was months ago).
Porting a p2 program to p3 is arduous and non-trivial, and the 2to3 program is an absolute joke that not only fails to do even the most basic transformations, it constantly introduces invalid syntax.
>>
>>81051476
>Python3 is still unstable to this day and I still rely on python2-only (expert) packages (not deprecated ones either, the last update was months ago).
lol
>Porting a p2 program to p3 is arduous and non-trivial
You've had 13 years to start, shouldn't have left it to the last minute (which was actually last year).
>>
>>81051453
maybe trannies should just go post about programming on their containment board then
>>>/lgbt/
>>
>>81051496
we already have containment threads for trannies >>81046707 but they are still shitting up this thread
>>
>>81048753
dicts[num] = dicts.get(num, 0) + 1
>>
>>81048973
Most python devs would probably use defaultdict for that pattern, if it was any code worth caring about

You do have some boilerplate as you need to import defaultdict from the standard library:
from collections import defaultdict
dic=defaultdict(int) # could also use a lambda here to initialize a non-zero value if desired


But then this is all you need:

dic[cum] += 1
>>
>>81051489
>You've had 13 years to start,
If I had started 13 years ago, I would have had to nonstop chase the breaking changes with every subpoint version update, that's one of the main reasons everyone stayed with 2 all this time. Other reasons include:
- It's slower
- It's more verbose
- Until recently, it was outstandingly buggy
Did you know that dictionaries in python until 3.5 or so were naive and outrageously low-performance? The kind of stuff that undergrads work out in year 1 as part of their classes was not implemented until that late, because guido is a complete hack.
>>
>>81051573
Please read this article:
https://docs.python.org/3/howto/pyporting.html
>>
>>81051540
maybe they should just be banned from the internet entirely then until they kill themselves
>>
>>81051622
>>81051540
see >>81049963

It's not a real tranny, he would've committed suicide already. It's a concerted shitposting effort by /r/eddit or discord or something and jannies don't give a fuck.
>>
>>81048470
Stupid question:
Distributed file systems, such as Hadoop split data into blocks of a fixed size, 128MB as default in Hadoop. Now the claim for most distributed data processing is that you should "move the code to the data, not the data to the code". My idea of this is that you run the processing of a block where that block resides in the cluster. But how does that even work? In order for it to work you'd need each block to be sensible for the type of processing you intend to do. In case of a simple word count you'd need to make sure that no word was split when splitting the file into blocks, json files get even trickier, and you'd need to support this for all kinds of data?
I feel like there is a major step I'm missing here. Does anyone know how this works in practice?
>>
>>81051496
traps and anime always been part of 4chan subculture; op's pun with system traps is on point.
>>
>>81048470
god i wish that was me
>>
>>81050824
>>81050837
thanks
>>
>>81051280
No, it definitely prompts it at commit stage already.
>>
>>81051719
Not only that, the OP image is old as hell. I remember seeing it well before irl 3D trannies started fucking up programming.
>>
>>81051465
Thanks a lot
>>
>>81051766
commit is local
>>
>>81051573
I've been using python3 for awhile day to day and generally like being on the up-to-date versions. There are a few tweaks in the standard library I like that let me skip using 3rd party libraries (or my own wrappers). Specifically I'm thinking of urllib.request and subprocess.run. I still prefer requests and my custom subprocess wrappers but if I need a portable script with no dependencies, those functions are far better than what's available in 2.7. And of course unicode blah blah.

Otherwise: you're absolutely right. The move from 2 to 3 was an absolute shitshow in every way and where the only messaging was alternating gay evangelists hyping features I didn't care about and "beatings will continue until morale improves" from the footsoldiers.

I still have some code running on python 2 which I actually didn't realize. It's been passing linter checks in 3.7 for awhile but there's still code in there that doesn't actually run with Python 3 so at some point soon I have to go in and fix it.
>>
>>81051789
Well, if I try to commit I get prompted for passphrase.

I just init'd a new repo (on my file system) and tried to commit a text file I made on the spot

idk i try to restart maybe it fixes or not
>>
>>81051620
You aren't listening.
>>
>>81051620
I know how to do it, I did it by hand a few times to port utilities because some libraries are dumping support for python 2 in new versions now (which is a huge problem, I have publications with code attached and at this rate, in 5 years, nobody will be able to run it without modifying everything). The guide is not at all comprehensive: new map breaks everything, new string breaks everything, etc. That said I hadn't heard of modernize or futurize, but I was using six and __future__ imports anyway.
>>
>>81051719
trannies have never been part of "4chan subculture" no matter how much you try to gaslight, tranny
>>
>>81051673
>But how does that even work? In order for it to work you'd need each block to be sensible for the type of processing you intend to do.
Congrats, you passed the IQ test. Yes, it's all memes and doesn't actually make any sense. It's shit retards who don't know what they're talking about like to spout. Sounds smart to them. That wisdom makes sense in the single data location case, but they never say that in that context, they only say it in the context of distributed data.
>>
noob question: I am starting to mess around with Heroku. Is it possible to host my sqlite db elsewhere and have my app access it? Is there a cloud db provider?
>>
how can i copy a vector to a what unique_ptr points to? for example if it is defined as std::unique_ptr<char *[]> the method get() return a char ** which i can then use it to access the different pointers. the ideal would a STL function that copies an element but with a predicate to tell HOW to copy them, is there something like this?
>>
>>81051875
Trannies have not. 2D traps yes. They have different origins numb nuts.
>>
>>81051673
not a stupid question anon, good question.
i did a search. remember that you don't program against HDFS directly. instead, you use MapReduce. MapReduce stores "record splits". Apparently, you store records in HDFS. Then, MapReduce is aware of how records are split physically. MapReduce handles consolidating the record into a single data structure, which is what your code executes on.
>>
>>81051948
kys tranny
>>
>>81049612
x^=y
y^=x
x^=y
>>
I like common lisp
>>
>>81051673
>>81051958
from the tutorial:
https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html
the default input format for splitting is TextInputFormat. From the docs: https://hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapred/TextInputFormat.html, this splits the file into lines.
>>
>>81048992
>Programmers can't remember order of operations
Then again, neither can most of 4chan
>>
>>81048753
Use `collections.defaultdict(int)` you retard.
>>
>>81051944
Something like this?
std::vector<char> vc = { 'H', 'e', 'l', 'l', 'o' };
auto p = std::make_unique<char[]>(5);
std::copy(vc.begin(), vc.end(), p.get());
>>
>>81051948
t. doesn't remember linetrap
>>
File: 1617854627218.png (2.31 MB, 2616x9816)
2.31 MB
2.31 MB PNG
>>
>>81051836
It describes how you could have, starting a decade ago, written Python 2.5-7 code that was compatible with Python 3, which would have made updating much easier.

>>81051854
>I have publications with code attached and at this rate, in 5 years, nobody will be able to run it without modifying everything
This happens to every language, and it could be much worse (i.e. Python was dropped after 2.7 for some new language, meaning no one could even port your code or use it for reference).
>I was using six and __future__ imports anyway.
You shouldn't have been using six unless you needed to support Python versions older than 2.7.
>>
>>81050360
uh, based
>>
>>81051854
distribute a container image, then in 5 years everyone will still be able to run your code
>>
>>81051385
I'm not rewriting and re-testing everything every decade you fucking webdev. Amazon barely supporting their services for more than 10 years is pathetic, it's a big "DON'T USE LAMBDA" warning sign on the service.
>>
File: 1617287306889.png (273 KB, 550x534)
273 KB
273 KB PNG
If a beginner programmer were to study for several hours a day every day, then do some projects to put together a portfolio, after how long would he be employable? Is half a year a reasonable goal?
>>
Notations, they scare me.
>>
>>81052252
Depends, are you a black woman?
>>
>>81048502
futanari
>>
>>81052227
>I'm not rewriting and re-testing everything every decade you fucking webdev.
I'm not a webdev, but if you care about AWS then you likely are, and that comment just tells me you write shit code.
>Amazon barely supporting their services for more than 10 years is pathetic
Python stopped supporting 2.7 in January, 2020. Why do you expect Amazon to keep supporting it?
>>
>>81052252
For webshit, maybe. But you won't be able to compete with thirdworlders who do a fullstack app for $20.
>>
>>81052156
dank
>>
>>81052123
Isn't there a counter object in collections?
>>
>>81052156
This is some of the worst code I've seen.
>>
>>81052163
>Python was dropped after 2.7 for some new language,
That's not a problem if python 2.7 is still maintained because someone can download the python 2.7 interpreter and run the code anyway. This is common even today, while nobody in the field uses matlab or fortran anymore, code in those languages is still sometimes needed from old packages.
Here however, because python 2 and 3 are artificially at odds, upstream makes sure to prevent it from working over time, and downstreams also do the same e.g. in distro package managers.
Additionally, the packages that some code may rely on is eventually going to stop working with python 2 altogether, and old archives of this code will not be available because nobody cares about maintaining at least the last good python 2.7 version of the code.
Additionally modern python 3 versions don't work on windows 7 (there's an artificial check in the installer).
>>
>>81052163
>It describes how you could have, starting a decade ago
Again you aren't paying attention.
Maybe one day there will be a self-aware Python 3tard who can actually take the dicks out of his mouth long enough to admit the way Python handled the transition to 3 was far less than ideal. The article link doesn't prove your point it proves his, that you need a whole article explaining the hoops you need to jump through (instead of actually spending time solving the problems you picked python to solve in the first place)
>>
>>81050064
IDEs are useful, language servers are braindead concept engineered by a braindead person, linters been around forever.
>>
>>81052209
Sadly that's what it's coming to.
>>
>>81052252
Never. Except for webdev, you cannot get hired without a degree (not necessarily in CS or similar, can be finance, management, physics, etc.) plus a portfolio. In that case, it's about portfolio contents and not about time so specific focus is better than generalized learning.
>>
>>81052288
>I'm not a webdev I just think like one
>Python stopped supporting 2.7 in January, 2020. Why do you expect Amazon to keep supporting it?
I expected them to support it indefinitely as they deployed it as a cornerstone of their service managed by Amazon and not the customer. As as reminder, COBOL, FORTRAN, and Ada are still actively supported. If they expect me to fall for vendor lock-in like lambda, then they better not abandon their shit after 10 years. Never using lambda again, I'll roll my own. What a joke that a trillion dollar company throws up its hands and does a "nuthin' we can do" because they're no longer getting free patches from freetards.
>>
>>81052135
no, i have a vector of strings, to get char* (as opposed to c_str() that returns const char*) i have to do &vc[0]. for every element, is it possible using an algorithm?
>>
>>81052252
If you want to support an ancient PHP5.4 WordPress codebase you can get employed in a week assuming you know what for loop does.
>>
Incredibly based
https://www.youtube.com/watch?v=BPhy97WPLHc
>>
>>81052099
Thanks!
Line splitting makes sense for map reduce jobs. Because it's a pretty trivial task and ridiculously parallel for most parts. I guess things like sparks RDDs need to do something more complex upon creation to be sensible, as you can read files from HDFS directly into RDDs, but I'll find that out for my self. Thanks again!
>>
>>81051965
x^=y^=x^=y
>>
>>81052353
MATLAB is still taught at universities, and Fortran's last major update was in 2018 (more recently than Python 2).
>>81052403
Last major release of Cobol was 2014, and for Ada 2012. Additionally, both Fortran and Cobol are ISO certified, and I can't find any mention of Ada support on their website.

>>81052360
Maybe you should have been paying attention. The work that needed to be done to stay compatible with the latest Python 3 version whilst still using Python 2 was minimal, but you had to have been doing it over the last decade.
>>
how come anything related to windows and c++ I have to dig through 15 levels of defines to figure out what function is actually being called on what types
>>
>>81052469
>MATLAB is still taught at universities, and Fortran's last major update was in 2018 (more recently than Python 2).
None of which is relevant to the point.
>>
>>81052469
>was minimal
t. never tried
>>
>>81052456
no problem.
I'm also curious to see how splitting, say, a file containing a JSON array with many objects would be done.
do you know if there's a preferred input format for MapReduce?
it looks like MapReduce can read from HBase and Cassandra, so that may be the easiest way to store data.
>>
>>81052469
>Last major release of Cobol was 2014, and for Ada 2012
Yes, and? They don't need new features, they just need to continue to work securely. Maintenance work is pretty minor for languages that went into maintenance mode 20-40 years ago. Amazon just dropped everyone approximately 1 year into maintenance mode.
>>
>>81052505
People still use those languages, and they've been updated more recently than Python 2, so it isn't surprising that code written in them can be still be run on modern machines.
>>
>>81052379
untrue. accenture et similar are always hiring.
>>
>>81052532
It's like you just spout random words hoping that previous posts hadn't already addressed your points.
>>
>>81052516
>leaves things to the last minute
It was minimal if you had been working on it for the last decade, not my fault you left it until now.

>>81052531
Maintenance is a lot of work, and those languages have had major updates more recently than Python 2.

>>81052558
If you want to point the specific sentence I misunderstood I'd be happy to revaluate it.
>>
>>81052539
Only with degrees and, according to their job postings, about 500 years of experience. For these hard requirements they offer a massive salary of $50k starting.
>>
>>81052578
>Only with degrees
yes, they require high school degrees. not university degrees. they only put high level entries on the website. Just send them your CV, they'll hire you anyway even if you have 0 experience and no pieces of paper.
>>
>>81048470
>>81045599
in haskell this is just
import Data.Binary.Get
import Data.Binary.Put
import Data.Int

data Dumb = Pepeposter
{ fchar :: Int8
, ptr :: Int8
, schar :: Int8
}

toChar :: Int8 -> Char
toChar = toEnum . fromEnum

main = do
let buffer = runPut $ mapM_ putCharUtf8 "1234567890abcdefghijklmnopqrstuvwxyz"
pepeposter = runGet (Pepeposter <$> getInt8 <*> getInt8 <*> getInt8) buffer

putStrLn [toChar (fchar pepeposter), ' ', toChar (schar pepeposter)]
>>
>>81051875
yes they are, browse any 4chan archive. the trap meme originated from this place.
>>
File: 1593214616919.jpg (32 KB, 858x725)
32 KB
32 KB JPG
>>81048470
I DO NOT FUCKING UNDERSTAND RECURSION REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
>>
>>81052752
function AddUntilFive(num){
num += 1;
if (num < 5){
AddUntilFive(num);
}
}
>>
>>81052801
I know the basics of how to use it but I'm trying to gain a deeper understanding of it so I can use it comfortably and it's kicking my ass
>>
>>81052570
>Maintenance is a lot of work
Freetards were doing it for free. Amazon is making billions on AWS. I think they could manage.
>>
>>81052252
You have to commit to actions that alter the outcomes.
>>
>>81052835
there's nothing deeper to understand
>>
>>81052919
They could, but they want people to upgrade to Python 3 as it is much harder to support a language when no one uses it and a direct successor exists.
>>
>>81048753
in haskell this is just
case M.lookup num dict of
Just v -> M.insert num (v + 1) dict
Nothing -> M.insert num 1 dict
>>
>>81052752
recursion is feeding output as input to itself. like eating your own shit until it's refined enough.
>>
>>81049017
in haskell this is just
(sendData . createMessage) user
>>
>>81052976
You have webdev-brain. Anyway, this basically kills lambda, no one will trust it from here out other than webdevs. How long until they're forcing you to rewrite and re-test all your python 3 code for python 4?
>>
>>81053038
>just
SendData(CreateMessage(user));
(sendData . createMessage) user

it's longer, lel.
>>
>>81052835
Write some tree/graph traversal stuff, or unironically read SICP + work through it with scheme or racket
>>
>>81049017
Do fluent when possible.
user.CreateMessage().SendData()
>>
>>81052252
Maybe to do basic web shit. It heavily depends on your background as well. But as a rule of thumb, don't set these kind of "learn X in Y amount of time" goals. Simply focus on becoming as good of a developer as you can, you are ready for employment when you are ready for employment. Of course you can apply to jobs after 6 months, and if you land one, hey that's great, but the ride is far from over. With a short time frame like 6 months, at best you'll become a web developer who is completely bound to one tech stack, and shits the bed when having to work with new technology.
>>
>>81053093
>POO
>>
How would you right a fast algorithm which checks if a given IP is in a VERY long list of IP blocks?
>>
>>81053142
>NEET
>>
>>81053173
sort the ips
>>
>>81053173
Y-Fast trie
>>
>>81053198
i have to go faster than this
>>
I have no experience with desktop gui software is it possible/advisable to make something like a visual node editor in pyqt5? I am trying to port some of my ocr scripts and embedded the preprocessing stages as visual boxes you can see (to modify, skip etc.).
Can that be easily done with pyqt5 widgets or should I just use opengl for that? It would somehow like this http://playground.tensorflow.org/
>>
>>81053212
hash them?
>>
what do i do if an higher ranking programmer is wrong about something and they won't listen to reason
>>
>>81053227
cancel him on twitter
>>
>>81053068
in haskell this is just
(sendData.createMessage)user
>>
>>81052610
>just send them your CV, they'll hire you anyway even if you have 0 experience and no pieces of paper.
Is it really this easy in the US? Fuck in Germany those fuckers won't even bother looking at you if you don't have a masters at 22.
>>
>>81053212
You only need to sort them once, unless they change for whatever reason.
>>
File: freddie_sicp.jpg (65 KB, 640x480)
65 KB
65 KB JPG
>>81048992
Brb operator overloading multiplication to be addition and visa versa exclusively when more than one infix is detected in a statement without the compiler warning being on. The dumb mother fuckers that trust themselves to not slip up must learn how assumptions are undignified sooner rather than later.
>>
File: 1300044776986.jpg (10 KB, 250x250)
10 KB
10 KB JPG
>NOOOOO YOU NEED TO ADD AN EMPTY LINE AT THE END OF THE FILE
>>
>>81053291
newline character is not empty
>>
>>81052752
what's so difficult to understand?
>>81052801
bad webdev
>>
>>81053291
Had a lot of bugs because of this shit
>>
>>81053275
>shot yourself in the leg
>what the fuck how come nobody told me that guns are dangerous? ban the guns reeee
>>
>>81053266
that's your price to pay for "free education" europoors
>>
>>81053321
The newline character is on the previous line.
>>
>>81049017
Message data = createMessage(user);
sendData(data);

fixed
>>
>>81053377
>die in a car crash
>what the fuck, how come nobody told me that cars are dangerous? seatbelts should be required by law
>>
I did the guessing game at the start of the rust book.
use rand::Rng;
use std::cmp::Ordering;
use std::io::{self, Write};

fn main() {
println!("Guess the number!");

let secret_number = rand::thread_rng().gen_range(1..=100);
let mut game_over = false;

while !game_over {
print!("Please input your guess: ");
io::stdout().flush().unwrap();

let mut guess = String::new();
io::stdin().read_line(&mut guess).unwrap();

let guess: u8 = match guess.trim().parse() {
Ok(num) => num,
Err(_) => continue,
};

print!("You guessed {}. ", guess);
match guess.cmp(&secret_number) {
Ordering::Less => println!("Too Small."),
Ordering::Greater => println!("Too big."),
Ordering::Equal => {
game_over = true;
println!("Correct!");
}
}
}
}
>>
Let's say I want to hide a secret string in code in a way that doesn't scream "secret shit hidden here", what are some good ways of doing that? Nothing too serious, just something to protect me from leaking something with a screenshot.
Maybe a tiny decryption function that can be expressed in one line of Python?
>>
>>81053614
Environment variables.
>>
>>81049056
>>81049203
actually it should be (not (= a b))
>>
File: first-language.jpg (225 KB, 1719x972)
225 KB
225 KB JPG
So true
>>
>>81052379
You're retarded, I have no degree and was hired
>>
I have a degree but have never been asked for it.
>>
Why do you want to get hired anon? I'm not saying you should be jobless, but why not freelance or just work for yourself?
>>
>>81053714
Stable income, retirement plan, get to meet people, get input and ideas from other people
>>
>>81053714
Sex with coworkers.
>>
>>81053750
Unions?
>>
>>81053291
Why wouldn't you if the line is finished that's like not using punctuation in English to terminate multiple sentences
>>
File: 1616957546251.jpg (111 KB, 1000x600)
111 KB
111 KB JPG
>>81053678
Racket is good, but I like a language with a bit more SOUL
>>
>>81053467
>join the formula-1 race
>keep seat belt on and drive at 40 mph according to law, what does it matter, you'll get to finish occasionally
>>
>>81053291
Even fucking mg does this shit for you, i'm really sorry for you and whatever shitty text editor you're using
>>
>>81053793
Hey! Me too!
>>
>>81053714
Sun Microsystems
>>
>>81053820
lol just found a new trip kek
>>
>>81053850
found?????
>>
>>81049155
    x -= -y + y=x
>>
>when you realize that programming is just shuffling data around
it just lost a tiny bit of soul
>>
>>81053874
you forgot the lambda list ;)
or i might just be retarded and put an extra paren
>>
>>81053850
>>
>>81053885
>it just lost a tiny bit of soul
Lost? I'd say it got more soul than it ever did for me
>>
>>81049155
looks like ass
(x,y) = (y,x)
is a much cleaner syntax for this and makes sense intuitively and mathematically,
x = y = x
does not
>>
trip should be enforced like on /pol/.
>>
>>81053614
Put it together from diffrent char arrays or string builders.

Or encrypt it and change when it gets called.
>>
>>81051203
unrelated but microsoft implemented utf8 for *A() functions https://docs.microsoft.com/en-us/windows/uwp/design/globalizing/use-utf8-code-page
>>
>>81049155
In lisp, this is just
(let
((x 1)
(y 2))
(rotatef x y) ;; fun part
(format t "~d~%~d~%" x y))
>>
>>81053885
Existence is shuffeling data around
>>
>>81053714
>why not freelance
how and where? I am not going to compete with the average indian for 5$ and walking into a random business and offering my services sounds stupid.
So only conventions/conferences/fairs are left at that point you could just get a job.
>>
>>81048753
See
>>81051561
This
>>
>>81053714
I don't understand people who don't work on their own? I mean you can offer a service and ask money.
>>
>>81054049
>how and where? I am not going to compete with the average indian for 5$ and walking into a random business and offering my services sounds stupid.
https://www.youtube.com/watch?v=AhXGtlwgqtk
>>
>>81053093
niggerlicious
>>
>>81049017
In lisp, this is just
(send-data (create-message user))
>>
>>81053885
Context matters
>>
>>81048753
In Java this is just
    dict.merge(1, Integer::sum)
>>
>>81048753
In python, this is just
deafultdict[num] += 1
>>
>>81053265
uh, anon
https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0282-record-dot-syntax.rst
>>
>>81048753
in c++ it's just
++dicts[num];
>>
test
>>
>>81050406
Ironically IDE's are useless for large projects because there's no way you can navigate it using the cute graphical shit or clicking around, only searching/jump to symbol type navigation is usable - and those work perfectly fine in typical stand alone text editors.
>>
>>81054452
You usually have second monitor for the tool windows and just use the command palette to jump around.

IDEs are more of a 'large organization' thing than they are 'large codebase' thing ime
>>
>>81054452
t. fizzbuzzer
good luck using "text search" on someone else's code while looking for a piece of code you don't know the exact naming of
meanwhile I casually scroll through the outline or search specifically over function names
>>
>>81050064
imagine a language so shit you have to remember "precedence rules" lmao

90% of what ides do is ultimately working around bad language design
>>
>>81052361
Language servers are unironically the only good thing Microsoft has ever shit out, and you're salty because they will finally make big bulky IDEs obsolete.
>>
python retard here. How do I read from an ojbect that looks like
response = {
'status': 200,
"message" : something
}


I thought I could just do

data = response.get("status")

but It says that there is no attribute "status", and if I print it it looks like it does in the code snippet
>>
>>81048992
>should languages forbid users from potentially making stupid mistakes?
Programming languages should protect against accident, but not against fraud.
>>
>>81054452
yeah and most ides are sluggish as fuck once your code base is huge.
>>
>>81048506
How can I write a method in java that could take different parameters (lambdas to be exact) WITHOUT overloading it in the class?

o.method(m1, m2, m3);
o.method(m3);
o.method(m2, m3);

Doing something like this should be legal
>>
new thread >>81054733
>>
>>81054670
If they all have the same type, var-args
    @SafeVarargs
void method(Function<Integer,Integer>... funcs)
>>
>>81054670
why would it take different parameters? what's the method for and what exactly are the lambda parameters used for inside the method?
depending on what you want to do exactly, look into
>Inversion of Control
>Dependency Injection
>Builder Pattern
>>
hello I must learn the c plus plus please help
>>
>>81054670
What do you mean different lambdas? Lambda is syntax sugar for single method interface. So you just create more interfaces and create methods that accept those interfaces
void foo(OneArgumentInterface);
void foo(TwoAgumentInterface);
void foo(ThreeArgumentInterface);

If they're the same type of argument, just use vararg.
>>81054745
>safevarargs
You fucking what
>>
>>81054754
Why?
>>
>>81054622
response["status"]
>>
>>81054670
o.method([m1, m2, m3]);
o.method([m3]);
o.method([m2, m3]);
>>
So is everything in sepples going to be turned into modules now? Is that the end goal?
>>
>>81055191
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md

ctrl+f modules

short answer, yes

welcome to python++
>>
>>81055191
The real question is why they weren't in from day 1 centuries ago
>>
>>81055342
Because muh C compatibility.

Headers are a completely outdated and inefficient compilation model, Sepples sadly inherited it.
>>
>>81050504

I think it's #![no_implicit_prelude]
>>
>>81052610
Whatever helps you sleep at night, Timmy. However you should note that this site is 18+, you can't be browsing here at your age.
>>
>>81052752
it's just bananas, lenses, envelopes and barbed wires
>>
Serious question guys - I'm building an application in flutter and making some API requests. Every tut I look up has some pajeet making 9 different error handling classes to cover 55 slightly different things. This all seems retarded.

Is there any reason at all, why I cannot place a status.dart file like
enum Status {
SUCCESS
FAILURE
CONNECTIVITY_ERR
TIMEOUT
}


and just leverage these in displaying any error handling to the user on conditionals? Am I missing something here, or is proper revolting against pajeet pay-per-line stupidity?
>>
>>81053470
You won't learn much by copying code anon
>>
File: 1613170676731.png (99 KB, 791x79)
99 KB
99 KB PNG
>>81055926
>>
>>81055881
Im 26 and I'm a software engineering major working in Accenture. Fuck off. a lot of my coworkers never even stepped a foot in a university. They hire everyone, even people that never coded a single line of code. They train them and if they have decent programming skills they keep them there programming, otherwise they find them another position. You need to either fuck up big or be a complete retard to be laid off.
>>
>>81055926
Newbie to /g/ and programming at the same time.
How do I post the code like this instead of plain text?>>81055926
and>>81055107
and>>81054745
etc...
>>
>>81055953
> Not actually able to give a real answer.
>>
>>81056068
>whining
>thinks it's a question worth answering
>>
>>81055952
Well I made my own changes: using a boolean intead of a break to end the loop, and having better looking output.
>>
>>81056108
You are a nigger.
>>
>>81056125
ur a double nigger
>>
>>81055926
You might want to know slightly more than "there was an error" if you ever have to debug something. Enums are dirt cheap so there really is no reason to hold back.
>>
File: Capture.jpg (26 KB, 1245x307)
26 KB
26 KB JPG
>>81048470
What am I missing to upload an image?
Text works, but I've never been able to get an image uploaded here.
>>
>>81056275
Sounds fair - so your issue wouldn't be the use of the enum, so much as the quality of the description. I think dart allows simple methods for enums... In this case, more than sufficient then.
>>
error handling is cringe, just don't make mistakes
>>
>>81056431
just jump straight into debugger like common lisp does
>>
>>81056459
debuggin implies you wrote a bug, weak
>>
>>81056061
>>81056685
https://4channel.org/rules#g
>>
Rate my shadertoy glsl shader, /g/!
void part(inout vec3 u, vec4 tr) {
u.z=min(u.z,max(step(tr.w,abs(u.y+tr.y)),step(tr.z,abs(u.x-tr.x))));
}

vec2 rot(vec2 v, float a) {
float s=sin(a);
float c=cos(a);
return mat2(c, s, -s, c)*v;
}

void mainImage(out vec4 fragColor, in vec2 fragCoord) {
vec2 uv=rot((fragCoord-.5*iResolution.xy)/iResolution.y,iTime*.2);
fragColor=vec4(1.,0.,0.,1.);

for (float i=0.;i<3.;i+=1.) {
vec2 id=floor(uv*=4.);
uv=fract(uv)-.5;
vec3 u=vec3(rot(uv,iTime*(i+1.)*sign(mod(id.x+id.y,2.)*2.-1.))*1.1,1.);

part(u,vec4( 0.0, 0.0, .25, .05));
part(u,vec4( 0.0, 0.0, .05, .25));
part(u,vec4(-.125, .2,.125, .05));
part(u,vec4( -.2,-.125, .05,.125));
part(u,vec4( .2, .125, .05,.125));
part(u,vec4( .125, -.2,.125, .05));

fragColor.rgb+=u.z*mix(vec3(0.),vec3(max(floor(.35/length(u.xy)),.1/u.z)),.9);
}
}
>>
>>81056714
Many thanks!
So I will post it plain bc no one respond
[public static void main(String[] args) throws Exception {
if (args.length != 3) {
System.out.println(
"Usage: java MergeFiles file1 file2 mergedFile");
System.exit(1);

}
File file1 = new File(args[0]);
if (!file1.exists()) {
System.out.println("file1 " + args[0] + " does not exist!");
System.exit(1);
}
File file2 = new File(args[1]);
if (!file2.exists()) {
System.out.println("file2 " + args[1] + "does not exist!");
System.exit(2);
}
// Check if target file exists
File targetFile = new File(args[2]);
if (targetFile.exists()) {
System.out.println("Target file " + args[2] + " already exists");
System.exit(3);
}

try (
Scanner input1 = new Scanner(file1);
Scanner input2 = new Scanner(file2);
PrintWriter output = new PrintWriter(targetFile);) {
while (input1.hasNext() && input2.hasNext()) {
String h1 = input1.nextLine();
String h2 = input2.nextLine();
ArrayList<String> list = new ArrayList<String>();
list.add(h1 + " " + h2);
for (String c : list) {
System.out.println(c);
}

}
}

}
}
]
I want to print the result using the last for loop with the elimination of duplicates and in a sorted (alphabetical) order, what to do from here? I'm completely stuck.
>>
>>81056737
Ask me how I know you're Indian



Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

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.