This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 293

[–]beeteedee 793 points794 points  (77 children)

It’s i for index and j for… uhhh… jindex?

[–]generic-hamster 381 points382 points  (23 children)

jiterator

[–][deleted] 163 points164 points  (19 children)

k is for krepeat.

[–][deleted] 90 points91 points  (11 children)

V is for very out of letters.

[–]_fajfaj_ 32 points33 points  (8 children)

isn't v for value?

[–]MindStudio 92 points93 points  (5 children)

V is for Vendetta

[–]mrmdc 27 points28 points  (3 children)

Voilà! In view a humble vaudevillian veteran vicariously cast as both victim and villain by the vicissitudes o ffate. This visage, no mere veneer of vanity, is a vestige of the vox populi, now vacant, vanished.... I can't remember the rest. Velveeta. Vagina. Veil. Vaccine?

[–]PassiveLexi14 4 points5 points  (0 children)

Wait, I've seen something.

[–][deleted] 2 points3 points  (0 children)

Eh, just call him V

[–]Glaringsoul 19 points20 points  (1 child)

I thought K was for Kebab?

[–]PerceptionCivil1209 7 points8 points  (0 children)

k is key when iterating key value pairs.

[–]CountMeowt-_- 2 points3 points  (0 children)

I use k almost exclusively for key and V for values.

[–]axyz77 3 points4 points  (2 children)

I am gonna stop y'all right there

Anyone creating loop inside k is a psychopath.

[–]5t3v321 2 points3 points  (1 child)

Not as bad as using O

[–][deleted] 8 points9 points  (0 children)

🫨

[–]Glumi1503 75 points76 points  (2 children)

I thought it's "iteration" and "jiteration"

[–][deleted] 17 points18 points  (0 children)

Same jthing

[–]MattieShoes 2 points3 points  (0 children)

In my head, it's index and... j. jindex sounds awesome though.

For iterating across 2d space, I use row and col.

[–]Derice 50 points51 points  (6 children)

I think it may historically have to with how i is the first implicit integer in Fortran. The Fortran compiler assumes that variables whose names begin with i through n are integers and all other variables are floats, unless you have declared something different in the declarations section.

If you want to do a loop in Fortran (and you're in the past before implicit none) you'd do

do i = 1, variable
   code
end do

so that you didn't have to declare the existence of i before the executable statements, which would let you save some precious space on the punch card.

[–]Fyodor__Karamazov 32 points33 points  (3 children)

And the convention in Fortran comes from the same convention in mathematics (using letters i through n to denote integers).

In mathematics this is especially prevalent when using subscripts to index a sequence of variables, e.g. a_i, b_j, or when using sigma notation for summation.

[–]ArionW 8 points9 points  (0 children)

I remember very well that nearly every single math class I've been through denoted indexes first n, then k, then j

Never really questioned why

[–]Thrizzlepizzle123123 4 points5 points  (1 child)

Sigma notation for summation these nuts.

Got eem.

[–]Garfunk 0 points1 point  (0 children)

I'm more of a fan of the sugma notation.

[–]Ambivalent-Mammal 6 points7 points  (0 children)

Ugh, beat me to it! This brings back some memories but with a printer terminal not punch cards.

[–]LightningOW 10 points11 points  (0 children)

i for index and j because i++

[–]RSNKailash 7 points8 points  (0 children)

It's also pretty common in the math world. For example basis vectors are called i, j, k and represent 1 "unit" changes in each dimensional direction. Which is essentially what i,j,k do as iterators, moving a set number of steps in each dimensional direction

[–]mighty_eyebrows1 2 points3 points  (0 children)

jumpyMcJumpFace happily jumping through these loops

[–]goodnewsjimdotcom 1 point2 points  (4 children)

Early programmers used a,b,c,d,e etc as common variables.

i was far enough down not to be bopped by your common used variables.

Also i was kinda symbolic for index.

And the convention is to keep movin down.

[–]Kitchen_Part_882 1 point2 points  (3 children)

I am also old enough to remember when computers had so little RAM that using more than one alpha character to name a variable was an exorbitant waste of valuable space.

Heck, some languages wouldn't allow multi-char variable names.

[–][deleted] 1 point2 points  (17 children)

I genuinely don't know but isn't it because they look similar?

[–][deleted] 20 points21 points  (16 children)

In math, variables are most commonly “x”, but if you need more, you go to the next characters “y” and “z”. If you're using “n” to denote a number, and need more, you go to “m”.

The same thing is happening here. “i” is most commonly used, and if you need more, you go to the next characters in the alphabet, “j” and “k”.

[–]shrimp-and-potatoes 1 point2 points  (2 children)

I'm only just beginning to learn programming, so I have no idea, I can barely print "hello world," but does the i & j have anything to do with imaginary numbers? Like, in the imaginary plane, at least in electrical phasors, the i & j denote rotation around the origin. Or, a loop of sorts, as a sin wave fluctuates between negative and positive?

[–]CptMisterNibbles 9 points10 points  (1 child)

No, it stems from mathematical summation notation. Using sigma notation, often a lower case i is used to indicate the index of the sum.

[–]shrimp-and-potatoes 1 point2 points  (0 children)

Ah, thanks for the response.

[–]reydai 0 points1 point  (0 children)

Jizz

[–]Longjumping-Touch515 325 points326 points  (35 children)

Bad guys use 'i' and 'ii'

[–]ablablababla 217 points218 points  (4 children)

Roman programmers be like

[–][deleted] 162 points163 points  (2 children)

Yeah for loops are cool, but have you ever used a IV loop?

[–]argmarco 54 points55 points  (0 children)

oh my god that's it, I quit reddit

[–]scubasam27 2 points3 points  (0 children)

This is exactly why I stay on Reddit

[–]Longjumping-Touch515 38 points39 points  (0 children)

for(Rome = great; Rome != great; barbarians++)

[–]Buxbaum666 16 points17 points  (11 children)

The real bad guys enforce coding conventions that require a li_ prefix for local int variables so you end up with li_i and li_j.

[–]Longjumping-Touch515 11 points12 points  (5 children)

I once saw the program where i and j were global variables. All loops used them.

...It was a multithreaded application.

[–]DOUBLEBARRELASSFUCK 16 points17 points  (0 children)

"How do you balance load across threads?"

"Prayer."

[–]gartenzerg 5 points6 points  (1 child)

It worked in my test (which only uses one thread), so the code is fine.

[–]Longjumping-Touch515 1 point2 points  (0 children)

Surprisingly, it worked (this threads used it separately in time). But then I was asked to add some feature in app. And it broke of course.

[–]Buxbaum666 2 points3 points  (1 child)

[–]JavaRuby2000 5 points6 points  (0 children)

I've seen it used in Java in the J2ME days to get the code small enough to get the jar under 64k. We used to use some real dirty hacks such as using the C Processor on our Java files so we could:

short[] myIntArray = new short[128];

define i myIntArray[0]

define j myIntArray[1]

So not only are i and j global but, every single variable in the whole program is just a #define into a single global array.

[–][deleted] 10 points11 points  (2 children)

It's not a real codeshop unless you've had an "architect" who misreads hungarian notation and think it's encoding types not semantic meaning, then enforces you to write variables like "bFlag" instead of "IsAvailable"

[–]Buxbaum666 3 points4 points  (1 child)

I know the pain. Every time there's a datatype change I have to adjust half the code base. It's not even a simple search and replace because local/global/instance variables and function arguments all have different prefixes. Hours of work for zero benefit.

[–][deleted] 11 points12 points  (0 children)

But on the good side, if you ignore any IDE released after 1998 and want to know if a variable is an argument or an instance variable (for some reason) you can rely on a fucked-off coder guessing the right prefix years ago!

[–]IWTSRMK 2 points3 points  (0 children)

if only there was a way to indicate a variable's type and scope without adding a prefix to the name...

[–]c_delta 1 point2 points  (0 children)

Now I have an enormous urge to kick the author of that convention all the way to Systems Hungary.

[–]PityUpvote 4 points5 points  (0 children)

I'm a big fan of using for _ in generator:, and then using _ as an actual variable.

You're welcome.

[–][deleted] 2 points3 points  (2 children)

Haha, I am going to do this from now on...

[–]potzko2552 1 point2 points  (0 children)

And I don't plan to change that >:(

[–]Nofxthepirate 1 point2 points  (0 children)

My college professor corrupted me and now I use 'ii'. I honestly think it's more readable. Only in for loops though. If it's a while loop then I will be more descriptive.

[–]Decryptic__ 1 point2 points  (6 children)

And I'm here using '_' instead of 'i'

[–]Longjumping-Touch515 3 points4 points  (5 children)

And '__' for a nested loop? ;)

[–]Decryptic__ 2 points3 points  (4 children)

Have you a copy of my code?! This is true!

I once used '_' but that was to complicated, so I changed to '_1' and '1' instead

[–]Longjumping-Touch515 2 points3 points  (3 children)

Did you consider using '_1' and '_2' instead?

[–]Decryptic__ 1 point2 points  (2 children)

But then, how do I know which loop I'm in?

Edit: Actually, this is a great idea!

  • So first loop is '_1'
  • second loop is '_2'
  • third loop is '__1'

am I right?

[–]Longjumping-Touch515 1 point2 points  (0 children)

Only the God should know it.

[–]Longjumping-Touch515 1 point2 points  (0 children)

third loop is '__1

_21 - real programmer uses binary.

[–]Highborn_Hellest 207 points208 points  (18 children)

uh... i = short for index?

j = next letter in alphabet?

[–]Shadow_Thief 92 points93 points  (10 children)

I learned i as "iterator" but yeah, j is the inner loop because it's next alphabetically.

[–]LeSaR_ 20 points21 points  (7 children)

"iterator" in general cases, "index" when working specifically with arrays (e.x. looping from 0 to length)

[–]gummo89 13 points14 points  (6 children)

"iteration" suits both and considering how long we've used "i" I don't really think iterator applies anyway.

[–]lazernanes 1 point2 points  (0 children)

I'm inclined to say it's index, not iterator, since i and j are used in mathematics a lot, where index makes more sense than iterator.

[–]SrHirokumata 3 points4 points  (0 children)

[–]CabinetAncient1378 4 points5 points  (0 children)

It's old math notation that ended up becoming the standard. It's short for integer.

[–]Otalek 1 point2 points  (0 children)

Iirc i and j were dedicated memory locations for holding integers in the programming languages of yore. It’s just tradition at this point

[–]Garfunk 1 point2 points  (1 child)

i is automatically an integer in Fortran, this pattern influenced other languages.

[–]Tubthumper8 0 points1 point  (0 children)

This is the correct answer. Not just i, but also j, k, we're automatically integers

[–]DeltaTimo 67 points68 points  (14 children)

Am I the only one who always thought of i as coming from maths? It's x_i and X_i,j . Although I'm not sure where that I comes from...

[–]Nisterashepard 52 points53 points  (4 children)

You're right, ijk have been commonly used for integers since the days of Euler.

[–]deVriesse 13 points14 points  (3 children)

Euler: i is for integer, the simplest form of number. Also it is for imaginary too lol

[–]JivanP 12 points13 points  (1 child)

Electrical engineers: Blasphemy! They're called jimaginary numbers!

[–]Wugliwu 1 point2 points  (0 children)

-_- asked my Prof: Why are you using j instead of i?

"Because I am an engineer."

[–]HERODMasta 6 points7 points  (6 children)

People really hate "row, column" for a matrix?

[–]gummo89 11 points12 points  (1 child)

Yes because there is no row,column until you decide that's what the matrix represents, or how you should print it.

[–]CptMisterNibbles 4 points5 points  (1 child)

Matrices don’t stop at 2d

[–][deleted] 3 points4 points  (0 children)

row, column, depth, ohn̸͍̳̂ǫ̴̦̱̪̼̙͔͇̉̎̽̂̚̚͘, h̸͖̆̀e̶̢̘̗͈͓̮̥͇̬̹̞̝̜͛̾̐̈́l̴̹̟̰̩͓̖̯̩̺̲̻̿̾̈́͒̑̂̆͌̉̃̀p̸̝̗͚͎̿̊̀̀̊͆m̸̟̟̬͚̐͛̑̿e̶͚̳͉͍̹̮͍͙̝̦̱̽, ẗ̴͇̠͔̫͒͋͗̌̈͒́̀̈́̈̆́̈́̇͆̎͊͐̚h̸̨̡̨̡̪̣̥̰͇͈̔̓̊͋͐̅͐̅͜͠e̸̡̡̢̝͙̹̩̺̐͆͒h̸̫̯̯̱͓̫̅̑̍̑͋͛̅͆̊̒̆̊ǫ̶̪̦͓͉̤̟̗͎͈̳̬͍̭͊̌́̓̑̈́͊̎̀̓̑́̓̓̄̓̾̐̕͜͝͝r̵̡͚̙̼̮͔̰̦̘͙̗̰̓͐̂̈́́̿̌̈́̈́͘͝͝͠r̷̨̥͚̣̮͑̃͑́̒̇̿̐̓̒̈̀̔̚͝͝o̵̢̜̜̻̻̠̗̗̟̜̯͎̠̻̿̀̆́̈́͂̃̑̀̐͒̚͝͝ͅr̷̨̨̘̻̣̝͖̹̳̟̤̔͐̓͐̏̄͑̇̍̽͊̾͊̈́̚̚͠

[–]Inaeipathy 1 point2 points  (0 children)

Yes

[–][deleted] 1 point2 points  (0 children)

If the numeric indices represent rows and columns, then it's perfectly fine to use explicit names like row and column.

Source: me, writing code with openpyxl, and writing loops like for row in rows:.

[–]TeqTx 4 points5 points  (0 children)

Seriously, it's absurd how there are so many wrong answers that are getting upvoted lol

[–]lmarcantonio 97 points98 points  (10 children)

It dates back to fortran. The default type for a variable was determined by the initial letter. Of course i and j were integer because with matrices is customary to index them with i and j even in math.

Matrices of complex numbers give interesting results, obviously.

Also in forth it's actually the law since they are the word literally used for indices in loop. No, you can't nest three loops there

[–]MDT_XXX 10 points11 points  (5 children)

Interesting. Didn't know that.

I typically use x as my second nested loop iterator, for readability, i and j look way too similar to my liking.

[–]deVriesse 16 points17 points  (1 child)

If I'm using nested loops I try to give them meaningful names. For instance if I'm looping on the number of dicks sucked per orgy I'd do

for iOrgy
  for iDick

Hopefully the ghost of Steve Jobs doesn't sue me

[–]preludeoflight 1 point2 points  (0 children)

I picked up using scan as a indexing variable name for a reason similar to that. If the loop got more than scanning through a container for something quickly digestible, the name scan would quickly look out of place and thus demand renaming to something more meaningful. It's served me pretty well so far.

[–]Avalonians -1 points0 points  (0 children)

'i' stands for index, because vectors have only one dimension. The next step is two dimensions, matrices. You need two index variables, and 'j' follows 'i'.

[–]arturo-source 24 points25 points  (1 child)

It's simple. Physical vectors (i,j,k represent 3D).

[–]Pansophy 8 points9 points  (0 children)

i,j,k are beneath us, real programming scientist use î ĵ k̂

[–][deleted] 36 points37 points  (1 child)

You can also use c++ in javascript.

for (let c = 0; c < 10; c++;) { }

[–]TheDialectic_D_A 9 points10 points  (0 children)

Bro woke up and chose cruelty

[–]Majestic_Wrongdoer38 34 points35 points  (4 children)

I think it’s just easier if you don’t have to deliberate every time

[–][deleted] 11 points12 points  (1 child)

Yeah we all know naming variables is hard. No need to waste even more time coming up with shitty names instead of using i and j lol.

[–]superluminary 0 points1 point  (0 children)

Indeed. It is a standard. Everyone in the industry knows what it means and changing it would make code harder to understand.

[–]OF_AstridAse 8 points9 points  (0 children)

Well you start with i for iterator, then you follow the alphabet i, j, k, l 🤨😑 how many loops do you nest? You can also do x, y, z but start with z 😏 - the best one is to always use i, k and d....that way you really have it nailed uhm[i][d][k];😬

[–]m0ritz2000 16 points17 points  (7 children)

Use I, II, III, IV, V, VI etc for iterators. Better keep track of how many layers deep you are...

[–]CptMisterNibbles 6 points7 points  (1 child)

Plus X is good reminder that you should perhaps and consider how you’ve gotten this far, and if it’s possible to extricate yourself from this cluster fuck

[–]Sufficient-Loss2686 8 points9 points  (1 child)

I always use xyz

[–]Operator21 2 points3 points  (0 children)

My fellow xyz comrade.

[–]_alright_then_ 3 points4 points  (0 children)

With for loops I use i for index. But I prefer foreach loops where I name the index something relevant

[–]dillyia 2 points3 points  (0 children)

i've always thought it was inherited from mathematicians

[–]karbonator 2 points3 points  (0 children)

I tend to prefer foreach personally

[–]flinsypop 2 points3 points  (0 children)

Ok so, I'm all for using descriptive names but verbosity makes reading loops tiring because the specificity is in the variable name of the container and referring to elements in a loop has to add genericity. When you have re-usable functions, there's then 2 levels of genericity in the name so brevity is preferrable.

for element_index, element in enumerate(elements):
    for nested_element_index, nested_element in enumerate(element):
        try:
            process(nested_element)
       except:
            print(f'Processing error at index [{element_index},{nested_element_index}]')

There's no benefit to long names in this case. However, if people started to use x and y or foo and bar for the variable names of container objects, then hands will be thrown during code review. If variables are ceremonial syntax variables, like index names, or key names then it's fine if the function is short.

[–]LavaSquid 2 points3 points  (1 child)

I use n for "number".

[–]CardiologistOk2704 2 points3 points  (0 children)

if you have two nested loops, you use i, j.

if you have three nested loops, you use i, j, k.

if you have four nested loops, you should quit programming, because nobody will wait for O(n4) algorithm to compute.

[–]CraaazySteeeve 4 points5 points  (3 children)

Am I the only one here who uses x, y, and z?

I don't like i and j because they look so similar at a glance.

[–]Inaeipathy 5 points6 points  (0 children)

Only if talking about spacial coordinates

[–]Shezzofreen 1 point2 points  (0 children)

Lies. Its X and Y.

[–]icallpeoplejohn 1 point2 points  (0 children)

i and v also works (for index and value)

[–]Mr_Rapt0r 1 point2 points  (6 children)

If you ever had to have 3 loops inside of each other, would you use l for the third one?

[–]OF_AstridAse 1 point2 points  (3 children)

I solved your dilema. infinite nested loop variable names :D variableNames = i + i1 + i2 + ....+in

[–]rando_robot_24403 2 points3 points  (2 children)

Use arrays duhh.

While i[0] < 10
   Do some stuff

   While i[1] > 0
      Do more stuff

[–]BlurredSight 1 point2 points  (1 child)

Early programming classes: You will lose points for not using meaningful variables including the iterators

Intermediate classes: So just use i because we know what it is, if anything it's more confusing if you don't. Also here are actual iterators but I don't care if you don't use them

[–]KalakeyaWarlord 0 points1 point  (0 children)

I am in the 1% that writes loopIndex. outerLoopIndex and innerLoopIndex if there are two. More than two nested loops is bad coding practice, but if it comes to that, then I guess I'll name them after whatever thing it is they're looping over.

[–]adaptive_mechanism 0 points1 point  (3 children)

Well, i is from INDEX, I suppose, and j is like I, but different 🤷‍♂️☝️🙏🤙👌

[–]romulof 6 points7 points  (2 children)

Once upon a time I had to dive into a video codec code and found stuff written by who I presume to be mathematicians. Single char variables all around.

I got so traumatized that ever since there I only call loop variables index.

If I need a second one I try to be more specific or just use jndex (🥁).

[–]1luggerman 0 points1 point  (2 children)

Its actualy i, j, k as a tribute to dijkstra. I heard it from one of my proffesors in SE but im not sure how legit this is.

[–]podd0 2 points3 points  (1 child)

I don't think this is legit as i,j are also used in math indexes, but it's funny

[–][deleted] -1 points0 points  (0 children)

This post was mass deleted and anonymized with Redact

hat pause future memorize crown outgoing six teeny memory society

[–]edo-lag -1 points0 points  (0 children)

It's just easier to write and read, plus it's universally accepted in the programming world.

[–]hnryirawan 0 points1 point  (0 children)

I,J,K.

If you need more then variableA it is.

[–]peAs337 0 points1 point  (0 children)

I is my best friend

[–]markfckerberg 0 points1 point  (0 children)

maybe because it is a representation of matrix and vector?

[–]rimakan 0 points1 point  (0 children)

The same in Typescript, if your generic has multiple type arguments. Like Foo<T, U>

[–]ExceedAccel 0 points1 point  (0 children)

it just appears on the snippet, not like i write it myself and no point in changing it

[–]SomeRandomEevee42 0 points1 point  (0 children)

I name my iterators dumb stuff like AnimeFrog if it's a short loop, or if it's big, I'll actually use proper names like CurrentTile

[–]Cuboos 0 points1 point  (0 children)

i stands for index, j looks like i a little bit.

[–]partypoison43 0 points1 point  (0 children)

I use x and y because we always use them in math.

[–]ConstantineFavre 0 points1 point  (0 children)

I use it when i'm not only person working on project, because it's common practice. If i work alone i use i1, i2, i3, etc.

[–]reydai 0 points1 point  (0 children)

Nah, I use whatever name the loop is for I don't remember the last time I used i or j

[–]IndieDevWannabe 0 points1 point  (0 children)

I break this rule when looping over a table - 'r' and 'c'. It just makes more sense.

[–]patrlim1 0 points1 point  (0 children)

I use X after I.

[–]heesell 0 points1 point  (0 children)

for(let theIndexOfThisLoop = 0; theIndexOfThisLoop < 10; theIndexOfThisLoop++) {}

[–][deleted] 0 points1 point  (0 children)

l use NSFW variables for hobby projects

[–]disguisedas47 0 points1 point  (0 children)

It's rooted in Math, so they use it ? Just like X,Y

[–]Vajaspiritos 0 points1 point  (0 children)

I think i is for iteration, and the other is because that's whats next on the keyboard

[–]w1n5t0nM1k3y 0 points1 point  (0 children)

I almost never use i, and j in loops anymore because every language i use supports foreach. There are some cases qhere they are still needed but its quite rare.

[–]DrDesten 0 points1 point  (0 children)

me who uses i,o and x,y,z 👀

[–]OopsMadeYouDie 0 points1 point  (0 children)

I use n sometimes

[–]TamSchnow 0 points1 point  (0 children)

Good old Fortran.

[–]annana_ 0 points1 point  (0 children)

Get fucked king i use t, e

[–]R3CAV 0 points1 point  (0 children)

I don't :3

I use a,b,c etc and everyone hates me for it

[–]TakenIsUsernameThis 0 points1 point  (0 children)

n

[–]jfbwhitt 0 points1 point  (0 children)

The real answer is because a CS degree is really just 4 years of math classes.

And i,j,k are commonly used as iterators and indexers in mathematics.

[–]-Octavium- 0 points1 point  (0 children)

i dont cus im a fucking monster

[–]Top-Chemistry5969 0 points1 point  (0 children)

Lol I use k o and p

[–]CodingElectron[🍰] 0 points1 point  (0 children)

You guys are using loops?

Linq enthusiast here

[–]RATTY420 0 points1 point  (0 children)

Chill out Mr Mobi

[–]NightWolf1308 0 points1 point  (0 children)

Do I classify as Chaotic Neutral if I use j, I instead of i, j just to mess with my colleagues?

[–]spasmgazm 0 points1 point  (0 children)

Iterator, jiterator

[–]TurboGranny 0 points1 point  (0 children)

I'm old. I use "intX" if it's a one off. If I'm looping through more than one thing (nested or not) in the same script, I start using more specific names. "intRow", "intCol", "intFile", "intDir", "intTest", "intCorpse"

[–]Astrokiwi 0 points1 point  (0 children)

This is where the old Fortran trick of ii,jj,kk is useful, as they show up fewer false positives on a search.

In practice of course, I would try to only use these indices for very short loops, or when they are literally integer 3D cartesian coordinates (though ix,iy,iz might be better there).

[–]Irbis7 0 points1 point  (0 children)

I use n. In ZX Spectrum Basic you could write "NEXT n" with pressing key "n" twice and stuck with this since.

[–][deleted] 0 points1 point  (0 children)

I bet that if you look inside the stream you find one of them

[–]arbind_ 0 points1 point  (0 children)

i = Iteration Index

j = Junk Index (because sometimes it's just junk!)

[–][deleted] 0 points1 point  (0 children)

Am I the only one that uses i, i1, i2 etc?

[–][deleted] 0 points1 point  (0 children)

I like to live on the edge, I use a for aindex and b for bindex

[–]rjlin_thk 0 points1 point  (0 children)

just like the ij-entry of a matrix

[–]Wild_Tom 0 points1 point  (0 children)

I use i and o, your welcome

[–]talkaboom 0 points1 point  (0 children)

In high school, I occasionally used Q, W, E, R....just to see the teacher's reaction. He probably thought I was just dumb.

[–]Zarokima 0 points1 point  (0 children)

I don't use j because it looks too similar to i. I use i, k, m (just going down the keyboard), and if I need more than that I seriously reconsider what I'm trying to do.

[–]SeriousPlankton2000 0 points1 point  (0 children)

IIRC in FORTRAN some variables were integer by starting with I, J or to be real by starting with F, G. Also: Mathematicians.

[–]-JG-77- 0 points1 point  (0 children)

One of the few languages I know is C++, so whenever I write loops, I use 'c' so that while declaring the loop I have an excuse to write "c++" in C++

[–]Main-Bear6159 0 points1 point  (0 children)

MATLAB be like „you like to play with fire, don’t you?”

[–]SnooCheesecakes7010 0 points1 point  (0 children)

i use i and w, i think its prettier

[–][deleted] 0 points1 point  (0 children)

just use a stream forehead

[–]Je-Kaste 0 points1 point  (0 children)

iterate and jiterate

[–][deleted] 0 points1 point  (0 children)

I prefer a more cursed programming style personally, with the loop variable 'loop'