#dev-general
1 messages ยท Page 109 of 1
(UP ew)
Ori shut
If people did that I wouldn't be able to flex on Frosty that he needs my framework
orjustlikelearnjavaandcreateyourownframework
@remote goblet I can but idk i am working on a really big project and i am just looking for now for a framework
Katsu, I don't, I mean it'll save me like 10 minutes overall :kek:
You can btw, (gonna be doing that myself tommorrow), was planning on having a map with items in a specific slot, and just iterrating through it while on a delay
But yes you can make animations with it
AnimationsExpansion
k
@quiet depot you can read kotlin right?
I'm gonna put something on github, and I want your opinion.
ok
@prisma wave @ocean quartz feel free to opine as well
Uhhh I don't actually know...
I just want to know whats in your head as you look at that codebase
Is val currentGame = null as? Game the same as val currentGame: Game? = null?
oh it's not, nvm
i'm not very kotlin literate apparently
could Arcade#namespace be a constant?
yes, and no
Yes, because you can create a namespace instance without a plugin
No, because they tell you literally to not do that
lol
oh
Game.kt would probably benefit from being split up a bit lol
nearly 1k lines damn
I tend to not worry much about line count
I could theoretically move the listeners out of the class
But they are extremely tightly coupled
Doesnt really make sense in my head
idk dude
from what I've seen so far, everything looks fine
I personally find it extremely confusing, but I assume that's due to my lack of experience with kotlin
Anything in particular you find confusing?
That kinda sucks to hear, I tried to make it really simple
I find the kotlin syntax confusing, your logic flow is fine
I'll see if I can find a specific example
I think it's fine as well, easy to understand what does what
Now... say for example... someone were to present this repository as previous work on an application
How do you think that would work out for them?
I doubt the interviewer would even mention it
wdym?
well, imagine you got far enough for an irl interview, and you had that link on your original application
I doubt it would come up in conversation. The interviewer probably didn't even thoroughly look at the code, they didn't need to. You'll be proving you can write code during that irl interview
Well the thing is, its remote work, and its specifically work that has to do with what this is
o, so no irl interview
in that case, it would probably come up in conversation lol
and would be a great indicator of competence, once there's documentation
I'll amend my statement
and would be a great indicator of competence, once there's documentation, and a respectable brace placement
SUCK MY ASS
If I have
data class RoleData(
@JsonProperty("role_id")
val roleId:String,
@JsonProperty("emote_id")
val emoteId:String
)``` and a `Map<String, RoleData>` is it possible to get a roleId by a emoteId?
Allman is supreme
supremely trash
wrong
wtf is JsonProperty
jackson
just use a field naming policy
Its already in my project from spring
lame
na
North America
any idea tho lol?
its not really a jackson question lol
jackson has field naming policies, use them please
how
alright
{
"x": {
"role_id": 2222222,
"emote_id": 333333
},
"y": {
"role_id": 444444,
"emote_id": 55555
}
}```
x or y
obv that will be changed tho
so like... values.find { it.emote_id == {what I'm looking for} }?
val type = fileComponent.readRoles().values.find { it.emoteId == "2222222" }
So would this give me a RoleData? that has the emoteId 33333
just wondering, this will never happen, but what if two things had 222222
beware...
also wtf is O(N)
The method youre using, "find"
will return the first object it comes across
that matches the predicate
ah ok
O(n) is time complexity
It means the time it takes to do that operation is directly proportional to the amount (n) of elements
ah
It is "worst case" O(n) because the element youre looking for can be anywhere in that collection
Could be the first, could be the last
This is in contract to index lookups, like get on a map being O(1)
Meaning the time it takes to find an element by its key is constant
No matter how many things are stored in a map
ah
Fun right?
Google "big o cheat sheet" if you want to look at a bunch of examples of time complexities for common operations
O(n!) Masterrace
yo bois.. soo.. never used loops before so I am kinda confused.. but.. like.. I am trying to add 10 to num each time it loops one thing... so... like
world1 = 10
world2 = 20
etc etc...
I remember skript works like this from some ages ago when I worked with it but I don't rlly remember when I learned java about this... or atleast I think I never saw it...
you're making a new int every iteration arent you?
declare num outside of the loop
Yes
Also is this forge? It's definitely not spigot
also eclipse
How have you never made a loop
And did you just mention doodoo, you should be ashamed for that
That's death by stonning
frcsty theres only one person here who should be ashamed of something
And that's not me
I am not creating the int inside the loop.. I already have it outside... it just hasn't a value... and also.. I did loops... but never rlly learned or atleast remember learning how I would do what I am speaking about rn...
you are creating it inside the loop lol
You're defining num inside the loop tho
also.. I also say skript isn't even near to java.. obviously... I was a skripter some big 4 years ago that's just what I remembered
and srry if I somehow ofended you?
also.. it's mcp... and yes... eclipse
yes.. defining num inside the loop
int num = 0
for(SaveFormatComparator world : worldsList) {
num += 10
}```
but not creating it
you have int in front of it tho
ok yes most of the time
It applies in this case as well
show the code where you make the int then
remove the int before num then
that should fix the issue then?
Since rn you're just doing this
int num += 10
Which is always 10
Instead of
int num = 0;
num += 10;
yes ok but it still didn't fixed the main issue
Which is?
I did exactly what you told me
Show me what you have rn
I'm confused rn, what did I help you with?
(private int num; above btw)
That's correct now
yes.
(I'm also bothered by that mix of allman and k&r)
but it's still drawing every string in the same Y
and what I want is to draw each string separatly
Same thing I believe
oh
its supposed to be +=
=+ means set num to +10
oof
eeee
a =+ 10 means a is positive 10
btw Yugi, I'm not the one who told you that btw?
๐
oof
(also just saying this channel isn't for support)
Can we talk about that mix of allman and k&r now?
allman bothers me
allman good
K&R gang
@prisma wave lmao that picture
Ty Ty
as much as I want to start trying out kotlin I keep procrastinating
Still waiting for those 400$, then I'm gonna try it
๐
Kotlin design is kinda alien to me
i look forward to saturday 27 june in that case
As someone who was avidly anti-kotlin gang, its pretty epik
๐ ๐
katsu stop saying it's nice and go finish the lib
any new language will be alien @old wyvern
no I mean like some features specifically
KM, if you learn Slovenian, I'll learn kotling ๐
worth
Do I have to become fluent?
Yes
Exactly ๐
Sure
okay
You gotta provide evidence every day tho
Let's go
Question. How should one maintain object logic and top level logic there
So if I need vault in my plugin do i need to download the plugin and add it to external lib
Use the dependency
dumb bird
It has a gradle dependency you can use
@hot hull 1 day down 29 to go ๐
Ah Duolingo doesn't have Slovenian time to find another app
@prisma wave frosty trash language
a deal is a deal ยฏ_(ใ)_/ยฏ
On day 30 you're gonna go into vc with me, and introduce yourself
๐
Gonna say the same thing for kotlin
Why would you be?
who is?
eastern european language
And you're fucked when it comes to actually speaking it
thien, what do u speak in vietnam?
vietnamese?
It is
Yeah
i had it in my head but it just didnt seem right
Also
๐
KM is gonna be able to say he speaks 2 after this
not fluently lol
lmai
There are 29 alphabets in this country, along with 26 latin letters excluded f, w, z
i speak ENGLISH and SLOVENIAN
I speak 3 :c
Well speak is an over statement
At least I can code with latin, u nerds ๐
๐
Pretend if I could write down entire class with Japanese...
Wait, does any programming language included japanese lol
Most programming languages are english, except for those private experimental ones
Hello
Well, we still have to learn Pascal or Python, so there's an extreme odds to have a very own vietnamese coding language
I think
What's best of kotlin and java?
Uh oh
java doodoo, kotling good
:D
technically it's personal preference but objectively kotlin has more features
I'ma just.. get outta here for now
yoo chill barr man
What about C++ and java?
you can't really compare the 2
Wait, origin in a random is the lowest possible right?
c++ is more low level than Java, they are for different things
Quality code.
kotlin can still have ; correct?
Wait, does that code snippet actually run?
@hot hull Can but why would you?
...
Cause I'm used to it Matt
Thats hello world in piet
And I'm not a savage like the rest of you
you get un used to it pretty quickly
the only reason you would want a semicolon is for 2 expressions on the same line
which is a bad idea anyway
You're just typing things that you don't need
Plus you get used to it pretty easy
how about when you are writing multiline statements?
You aren't ๐
the only reason you would want a semicolon is for 2 expressions on the same line
not 2 on the same line
ah I see
So close to having this animation perfect ;C
Either my brain is dumb af
[13:12:55 INFO]: 0, 1, 2
[13:12:56 INFO]: 1, 2, 3
[13:12:57 INFO]: 2, 3, 4
[13:12:57 INFO]: 3, 4, 5
[13:12:58 INFO]: 4, 5, 6
[13:12:59 INFO]: 5, 6, 7
Or this sequence is for some reason screwing up?
technically it's personal preference but objectively kotlin has more features
@prisma wave this is incorrect and u know it
The second part is correct
And it is technically an opinion
but hur dur java sucks Java users have no opinions kotlin good
thats my boy
So I currently have it so it gets set back to 0 if the index is 14,
but now I need to somehow retain the previous stack and just change the index
[13:16:18 INFO]: 8, 9, 10
[13:16:19 INFO]: 9, 10, 11
[13:16:19 INFO]: 10, 11, 12
[13:16:20 INFO]: 11, 12, 13
[13:16:21 INFO]: 12, 13, 14
[13:16:22 INFO]: 0, 1, 2
(0 would be 13, and 1 would be 14, whereas 14 would become 1)
I figured it out, it's ugly and I don't want to be bullied
private static int getColor(int color, final int slot) {
if (color > 14) color = 14;
if (slot == 0) {
if (color == 0) return 14;
else return color-1;
} else if (slot == 1) {
return color;
} else {
if (color == 14) return 0;
else return color + 1;
}
}
Go away
I just dont understand what Im looking at
What is your code here?
What?
X X X
X X X
X X X
I have this, each vertical line is a row, and I have numbers 0 - 14
middle row is my base point, then it's + 1 and - 1 for the upper and lower point
And since max point is 14, I have to properly get the - and + from the previous one
[13:47:17 INFO]: 14, 0, 1
[13:47:17 INFO]: 0, 1, 2
[13:47:18 INFO]: 1, 2, 3
[13:47:19 INFO]: 2, 3, 4
[13:47:20 INFO]: 3, 4, 5
[13:47:20 INFO]: 4, 5, 6
This is probs gonna be easier to understand (this being only 1 vertical row)
And whats the callsite?
The what?
The call site
No clue what you mean by that
Where do you call this method
Ah, in my gui open
I meant show me
for (int i = 0; i < 3; i++) {
gui.updateItem(slots.get(i), new GuiItem(colors.get(getColor(color, i))));
}
color being a random int from the list size (0-14)
random.nextInt(colors.size() - 1);
which I increase every time it runs that
you generate the random number once, and then increment by 1 in each loop?
Yea
gross
IntelliJ and Kotlin devs are probably less efficient in coding because they spend 80% of their time telling everyone else to use it
?
not true
90% for kotlin devs, and 40% for java
the time wasted spreading the word is gained back by kotlins efficiency in writing the code
You stole that joke @obtuse gale
good afternoon all
greetings
where
From me who stole it from Reddit
o
anyone know a good way I can split a list in to chunks?
List#sublist?
But yeah sublist does the job too
I should probably commit this absolutely horrendous code to GitHub by now lol, still gotta implement a way I can not have to push my token
Environment variables
so what just take an argument in my main function?
Map<integer,list> chunks = new HashMap<>();
int chunk = 0;
List editable = new ArrayList<>();
for(Object o : list) {
editable.add(o);
if(editable.size() >= maxchunkSize) {
chunk++;
chunks.put(chunk, editable);
editable = new ArrayList<>();
}
}
```Call this pseudo code xD
how am I going to use environment variables in this case?
System.getProperty(propertyName)?
and how do I pass it that environment variable?
You have to add it to your env variables manually
that's easy then
export ENV_VARIABLE_NAME=my_value
ez
though I'm forgetting that export works per-terminal
how tf can I set an environment variable then?
there ain't really a way you can do that globally and persistently on linux afaik
Google ๐
There is, I just forget the process
Oh I guess only if your version of linux has etc/environment
Otherwise theres no global
add the export command to the user's .bash_profile
you sure that one's gonna work?
And yeah, you could do it per profile ^
I think you can also set in /etc/profile.d
Oh I guess only if your version of linux has etc/environment
which ofc it does
Should?
And yeah, you could do it per profile ^
I think you can also set in /etc/profile.d
which I just did lol
now gotta reboot I think
yeah that worked
also, it isn't System#getProperty, it's System#getenv
okay now this bot is getting good
https://img.bardy.me/bardybot.png now that's gotta be my favourite response
The true response to that is, Launching nukes.
lol
the last thing I've got to implement is splitting the queue in to pages of 10 tracks per page if there are more than 10 tracks in the queue
which is going to be a pain the way my code is structured
https://github.com/BomBardyGamer/BardyBot rate my code time lol
that is what you call 0/10 readability
I just had a neat idea of something to make for showcase
@jovial warren gross
Hey, I'm looking for a elegant IntelliJ theme
Soft colors, no custom icons
Any suggestions?
Color themes for IntelliJ IDEA, Webstorm, PyCharm, RubyMine, PhpStorm and AppCode
Pay Sx or KM to make it for you
They'll argue for about 30 minutes per line about what the best practice is for x
@runic flume You should use my material theme one, it's got amazing colors
ehhh no
Essentially you get to sponsor the best argument in history, while we all sit here dying watching it ๐ฟ
Materal sucks
You suck
hello
I posted mine in this chat a while back
They'll argue for about 30 minutes per line about what the best practice is for x
@errant geyser this is SO TRUE
lol
They'll argue for about 30 minutes per line about what the best practice is for x
very true
and then everyone else will just stare at the conversation 
free xp ยฏ_(ใ)_/ยฏ
curly brackets + new lines work wonders for readability
that second part is the worst part about it I agree
the first part is in lots of different commands yeah can't disagree with that either
yeah that's terrible for readability I agree
more readable
never said it was more readable though
๐
the forEach?
When a function block has more than 1 line of code
give the value a name
I tend to give the value a name all of them time right now
Agree yeah
I'm surprised you didn't bring up the nowPlayingString code sx
am i being dumb wdym by
give the value a name
Can.Not.
like loop@?
Instead of using it
ah yeah
I should turn this code review in to a video with that guy laughing meme over it
kotlinOptions.freeCompilerArgs += ["-Xopt-in=kotlin.time.ExperimentalTime"]
it's just a clusterfuck of shit let's face facts here lol
Add this to your build.gradle
kotlinOptions.freeCompilerArgs += ["-Xopt-in=kotlin.time.ExperimentalTime"]
at the bottom?
And then just remove all the @ExpirementalTime annotations
No
It goes into the compileKotlin closure
You can also put it inside the compileTestKotlin one
okay done
Or remove them both and use this
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
// put your configuration shit here
}
okay
anyway
let's get to fixing up whatever the fuck this thing is that I'm looking at with the file name "QueueCommand.kt"
so what changes do you propose?
I've already braced the else statement that you said wasn't noticeable
any suggestions like "use allman" are just going to get disregarded though
In a world where you write code like this, one would expect you to be more open to different styles
He's already using Kotlin, what do you want from this man
the first brace on a new line ain't happening
Bardy
Patreon donations?
Kotlin is not a different style
Answer my question ;(
what question?
Wait Bardy, did you make anything out of puches yet?
oh this one
yeah I kinda did
Talk
wdym talk?
As in elaborate
I converted most of the project to Kotlin, but I was still working on changing a few things to make them better when I last left it
you can do that if you want when I push my commit
Absolutely not.
suit yourself then
also, you know my queue command?
I just made it worse lol
also, I thought allman was bad
then I saw:
if ( hours < 24
&& minutes < 60
&& seconds < 60
)
{return true
;} else
{return false
;}
on Wikipedia
Oh that's not even the worse
also @topaz bay another reason why I won't use allman is because it breaks Kotlin's official coding conventions/style
Oh that's not even the worse
show me worse then lol
true I guess
Whenever you use a defense, its important to actually know the parameters involved
I can break convention as much as I want to, because I know exactly where I do
I'm not saying my style is in any way a good style
Your style isnt a style
So why are you quoting kotlin's conventions?
because you keep promoting allman to me
does allman even allow for expression bodies to be used?
I doubt any of us are anyway
Allman is a brace style dude
Literally no one perfectly follows a style guide
This is why linters exist
true
I'm not asking for a better coding style anyway, I'm asking for a better method of doing what I'm doing
but I should really improve my coding style
Should I run every second and only do a task if the current second is a multiple of my interval or should I create a repeating task every interval-seconds and execute each time?
I was simplifying. I am running every MC tick, intervals can be anywhere from 1 tick to 1000
Or any long for that matter
Just make your task schedule itself in the future
Should I run every second and only do a task if the current second is a multiple of my interval
This is polling
Not necessarily in itself no
Its just a massive waste
Especially for something that has an interval
scheduler your task to run in the future, and then have that task schedule the next task in the future
No wasted computation
That's going to build the callstack, no?
No?
there's just a method called tick(). If I make a task to run in the future and it calls itself then...
I'll just use bukkit's async timer scheduler
o...k...
@topaz bay Speaking of that, on the custom entities, the pathfinder goal run every tick, to avoid it searching for items every tick i made the counter that'll count up to twenty and reset, and only run on then, which seems like you said a waste
How would you do that? Since I can't just have the method called every x ticks instead
I would use actual time deltas instead of a counter
store the last time it was ran, and on tick, check if its past a certain delta
Gotcha
@ocean quartz I have absolutely 0 recollection of this
I just got a github notification for it
Oh yeah I remember, clip didn't merge it because of the String.valueOf calls, and I had no idea about what else to do to reduce it xD
ugh.... why is scala so fucking ugly
I am so unbelievably thankful that Kotlin exist
Jeez what the fuck is that
That is awful holy
The amount of imports on that gave me aids
Interesting, but wtf
God, its such a trash language
Is that => the same as pythons
import x as y ?
@prisma wave https://github.com/knightzmc/pdm/blob/master/src/main/java/me/bristermitten/pdm/util/InputStreamUtil.java
why...
How could you do this to me
Do what?
That class
At least like 40 of them
CharStreams from guava
You could read it as a stream
and join it
Ah yes
gotta keep the size down
I've just realised that "never shade again" is kinda untrue since you'll have to shade that library lol
Theres also like.... 0 reason for that getaddurlmethod to have a sync lock on the reflection resolution
Theres no reason for that to not be resolved statically with the class
Better safe than sorry with the lock, it's very multithreaded so
wdym by resolved statically? In a static intializer?
Yes
yeah should probably do that
My brain was numbed from all the CompletableFuture debugging
from a static context
ah
Theres no thread level caching
Good point
I am somewhat dumb
like I said blame it on the futures
They are the bane of my existence
Why use them then?
I mean... there kinda is
You can use just normal callbacks internally
And expose those as completable futures
True
What
Why.... not use the one that accepts a throwable?
And simply append the dependency to the string?
hi is anyone here able to help me with a deluxetags issue?
ok
Ik they aren't the law
Linters are specifically designed to be mad about everything
I could use the Throwable, Supplier<String> one ig
Look I wasn't thinking straight
3 hours of trying to figure out why a future is never being completed will do that
I told ya you guys could argue about one line for ages
We're not even talking about one line
we have been for 8 minutes
oh
it's orange
includes the blue light filter in a screenshot like a boss
lies
what's lies
idk
me neither
LIES
Is there any such thing as true?
is there anyway to make a ban gui, like /ban (user) opens a gui
then u select time reason
yes?
@normal talon thereโs an awesome plugin called PunishmentGUI on spigot, only issue is you canโt change the things in the GUI quite yet, theyโre releasing an update with that
Wait uh oh I just realized this was dev general, did you wanna make your own GUI? Lmao
dev general for configurators 
CozyLeprechaun94 that's not really a question
Just....make a gui with a gui library / inventory thingy and listen for clicking
I've somehow managed to make a random always result in the same number ๐คฆ
Nice
Question
Why does my github default pfp look like a schlong
๐
I can never change this
Think of it as upside down mosquito
What kind of mosquitos do you have??
oh i kinda seei t now
Hey Frosty I'm getting side tracked by commissions, ItemActionsLib is still comin, but not in like, the next few days
Daily kotlin circlejerk meme #2
katsu, u getting paid well for the commission?
Hyperskill inverted the hamming code error correction order for their proj โ ๏ธ ๐ ๐ ๐
any1 who could help with the config of deluxechat?
When did you purchase the plugin?
today
@pallid gale Duty calls
done
This channel is for development, not configuration. use #deluxechat
bUt DEveLopMenT is ConFiguRatiOn
No ItS nOt
Aj
mmmmmm?
They are different moderately
mr. @prisma wave thank for meme
You're welcome
Has anyone used this? Thoughts? https://github.com/seeseemelk/MockBukkit
I've used it
It's not bad, seemed to be lacking a lot of features so I've got a fork with a bit more implemented
Oh yeah?
Yeah. I don't remember everything but ACF couldn't register commands, and enchantments weren't implemented at all last I checked, so I had to do them myself - https://github.com/knightzmc/MockBukkit
Haven't updated the readme though lol
Well if you ever do, I'll happily try it out.
I do use ACF in what I want to do a Mock of, so, that'll come in handy.
I heard Bukkit testing was the biggest pain in the ass
It's very annoying
But yeah being able to test commands is handy
Although coupling can make it frustrating
I test commands by making a server and adding it as a build configuration to IntelliJ
I mainly just need to test itemstacks against custom model data and whatnot.
Make sure enchants work, etc.
also, my boy's code has been cleaned up a lot now
I implemented enchantments and a lot of the ItemStack methods so I'd recommend using my fork for that
though that probably means nothing to you glare since you have no idea what I'm on about
Nice.
a lot of the messy multi-line messages are now string literals, and the messy if statements have been replaced with when statements
KM, have you implemented any other mock events? Like item drops and stuff.
I don't think so
Kk
Implementing them is fairly easy or I can do some of you want though
I'll check it out probably tomorrow. Preoccupied today.
๐
any way to pass a constructor param to a class annotation?
yeah true
so guess there isn't a way of doing what I want to do using matt's framework then ๐ค
there's gotta be another way I can not have to repeat the same code throughout many different classes
yeah that's what I was thinking
but how am I gonna do that with matt's framework
it depends on annotations outside of the class
also, found the perfect method for splitting this in to pages
Iterable<T>#chunked
takes a size value, returns a List<List<T>> of chunks
it does literally just return windowed though lol
public fun <T> Iterable<T>.chunked(size: Int): List<List<T>> {
return windowed(size, size, partialWindows = true)
}
Oh lmao
just trying to figure out how exactly to store these as pages
I'm thinking of storing them as a list of strings (each string being a page) and then just getting the indexed page on request
I wouldn't store it as strings
what should I store it as then?
Store the objects then convert to strings ad-hoc
ie whenever you actually need to display it
which is only in this method
you'd probably want to be storing more than just the name internally - video id, length, etc
I'm not intending on storing the name in the string
I'm intending on storing the entire page content
though that's probably not a good idea
maybe I should create a custom Page class that stores all the things I need, and then format that later
because it's not a search result
oh it's a queue
same principle though
what about it?
just trying to figure out how exactly to store these as pages
you think I should store them as a list of page objects?
I mean it's an option given how cheap classes are in kotlin
But I would just use a 2d list, with an optional typealias
@ocean quartz is @Optional not compatible with integer types either?
because I want an optional page number
I wanna either give it a page number, or have it default to 1
Use a nullable Int i Guess
so pageNumber: Int? = 1?
Are you using spring
Would anyone know what would be a reason for bungeecord not linking to hub and making this error:
> 14:49:40 [SEVERE] Jun 21, 2020 2:49:40 PM net.notfab.hubbasics.bungee.listeners.JoinListener onJoin WARNING: No available lobby servers!
The ports are all correct, bungeecord is enabled on hub, lobby is labelled in hub and there arent any changes to query ports. it was working before but now doesnt.
I'd do the default with the Elvis operator since the framework might provide null @jovial warren
@main nova wrong channel try #general-plugins or #minecraft
yeah it does but I've fixed that now
then the issue was that it was 0 size but I was trying to get index 0
so I fixed that by only trying to get index 0 if the size is greater than 0
now I'm going to test it again
Kotlin ๐
@jovial warren All parameters need to be nullable
if (list.size == Integer.MIN_VALUE + Integer.MAX_VALUE)
eh that might be -1 actually
yeah dw I fixed it
Niall that's going to be 0.5 no?
Oh wait no
that'll be negative half the amount of min_value
what was i thinking
Any cheap vps suggestions?
ovh
contabo
2gb should be fine I guess
Contabo it's shit
Yes ??
And it sucks
Hm nice
Have you look at their hardware?
Hmm
I want it as web server, to host a rest api and a website that will display data from the api - nothing too heavy ig
"We use Intelยฎ Xeonยฎ E5-2620v3, E5-2630v4, 4114 and AMD EPYCโข 7282 CPUs"
you don't need much for that
But might as well get the machine with better specs
I dont think you can choose which one to get
Any of those will be fine though
Will see KM
You get a seperate one
i got free credit
Ah alright
and I havent got any other emails
I think it comes a few mins later
They're pretty expensive normally
5 bucks am onth
Yeah be patient and check spam
and ive got 55 bucks free credit
oh damn you're rich
6$ for 2GB sounds good
On OVH
there are better providers imo
Such as?
price wise anyway
oof still no email
contabo, north networking was decent in my experience
can i reset my password for phpmyadmin someway through SSH
cos ive got access to that
does phpmyadmin even have specific passwords?
no clue
I thought it just used SQL users
probably does
"who needs Viagra when you've got fast, accessible vps's?"
and overpriced
Very overpriced
how can i change my sql password then lol?
I suppose so is Azure
contabo, north networking was decent in my experience
@prisma wave i dont like contabo because you have to pay install fees lol :))
contabo seems nice
but neither Azure nor DigitalOcean are made for enthusiasts, they're made for businesses
and you save more money in long term
48$ for a year
Contabo has been really good in my experience
which is why it confuses me that those are in the GSDP (GitHub Student Developer Pack)
The prices are insane
Ubuntu?
Never used centos personally
CentOS is great
I'm more familiar with Debian based distros
8 doesnt come with lamp pre installed xD
CentOS is backed by RedHat
8 doesnt come with lamp pre installed xD
I didn't know that was an option for 7 either
Red Right Hand
It is

