• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 23:03
CEST 05:03
KST 12:03
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Serral wins HomeStory Cup 2914Serral wins Maestros of the Game 243ByuL, and the Limitations of Standard Play3Team Liquid Map Contest #22: Results and Winners7Code S Season 2 (2026): RO4 and Finals Preview12
Community News
IntoTheTV X SOOP SC2 League : Weekly & Monthly4Clem: "I don't have that much hope in Blizzard"2ZeroSpace Early Access is Now Live!26Weekly Cups (July 13-19): Terran & Protoss rise; Zerg falters2Balance hotfix patch 5.0.16b (July 16)90
StarCraft 2
General
How would you feel about frequent/monthly balance patches for SC2? Reynor: GSL Loss Wasn't About Preparation Format What's the best tug of war? Balance hotfix patch 5.0.16b (July 16) Clem: "I don't have that much hope in Blizzard"
Tourneys
RSL Revival: Season 6 - Qualifiers and Main Event PIG STY FESTIVAL 8.0! (13 - 23 August) IntoTheTV X SOOP SC2 League : Weekly & Monthly INu's Battles#18 - Cure, herO, Rogue & ByuN Master Swan Open (Global Bronze-Master 2)
Strategy
[G] Having the right mentality to improve
Custom Maps
[M] (2) Industrial Park New Map Maker - Looking for Advice - Love or Hate
External Content
Mutation # 535 Assembly of Vengeance The PondCast: SC2 News & Results Mutation # 534 Burning Evacuation Mutation # 533 Die Together
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion Recent recommended BW games screpdb: new Starcraft reporting tool ASL22 General Discussion
Tourneys
Star Con San Diego 2026 BSL LAN Party - Kraków 29-30 August - OPEN SIGNUPS [Megathread] Daily Proleagues Escore Tournament - Season 3
Strategy
Simple Questions, Simple Answers PvT advise for noobs Fighting Spirit mining rates Creating a full chart of Zerg builds
Other Games
General Games
General RTS Discussion Thread Nintendo Switch Thread Path of Exile ZeroSpace Early Access is Now Live! Diablo IV
Dota 2
Looking for a Dota Mentor Official 'what is Dota anymore' discussion
League of Legends
TSM pausing esports and CLG Dead
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Power Rank TL Mafia Community Thread NeO.D_StephenKing vs This Guy From 1 Million Dance
Community
General
Russo-Ukrainian War Thread European Politico-economics QA Mega-thread Artificial Intelligence Thread US Politics Mega-thread How to buy a book - shipping from Korea to Europe
Fan Clubs
The IdrA Fan Club The HerO Fan Club!
Media & Entertainment
Movie Discussion! Anime Discussion Thread Series you have seen recently... [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread 2026-27 Football Thread placeholder TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Simple Questions Simple Answers FPS when play League Of Legend on laptop
TL Community
Northern Ireland Global Starcraft The Automated Ban List
Blogs
How Games can Help with Majo…
TrAiDoS
Hello guys!
LIN1s
ASL S22 English Commentary…
namkraft
Poker (part 2)
Nebuchad
An Exploration of th…
waywardstrategy
ramps on octagon
StaticNine
Customize Sidebar...

Website Feedback

Closed Threads



Active: 4060 users

The Big Programming Thread - Page 699

Forum Index > General Forum
Post a Reply
Prev 1 697 698 699 700 701 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
Manit0u
Profile Blog Joined August 2004
Poland17800 Posts
Last Edited: 2016-01-06 01:43:55
January 06 2016 01:42 GMT
#13961
On January 06 2016 10:29 aksfjh wrote:
Show nested quote +
On January 06 2016 05:19 Morfildur wrote:
On January 06 2016 03:24 Manit0u wrote:

$response = json_decode(json_encode($this->curl->response), true);


Why?! T_T


It's actually not too uncommon. It's a quick way to turn an object tree into an array. It's not exceptionally fast and it really should be in some properly named function somewhere, but the code in itself isn't bad.

Depends on your definition of "bad." It works, but I know some devs that would skewer you for that.


Holy crap. You guys just enlightened me. When I first saw it I was like "why would you encode stuff that you're about to decode instead of just leaving it as it is". Then you two answered and it dawned on me.

I have to agree that even if it works it's still really bad because it's not obvious/explicit enough to tell a person who hasn't seen it before what's actually going on.

Edit:
I guess that's one of the places where actual comments would help a lot...
Time is precious. Waste it wisely.
Cyx.
Profile Joined November 2010
Canada806 Posts
Last Edited: 2016-01-06 06:33:14
January 06 2016 06:31 GMT
#13962
On January 06 2016 10:42 Manit0u wrote:
Show nested quote +
On January 06 2016 10:29 aksfjh wrote:
On January 06 2016 05:19 Morfildur wrote:
On January 06 2016 03:24 Manit0u wrote:

$response = json_decode(json_encode($this->curl->response), true);


Why?! T_T


It's actually not too uncommon. It's a quick way to turn an object tree into an array. It's not exceptionally fast and it really should be in some properly named function somewhere, but the code in itself isn't bad.

Depends on your definition of "bad." It works, but I know some devs that would skewer you for that.


Holy crap. You guys just enlightened me. When I first saw it I was like "why would you encode stuff that you're about to decode instead of just leaving it as it is". Then you two answered and it dawned on me.

I have to agree that even if it works it's still really bad because it's not obvious/explicit enough to tell a person who hasn't seen it before what's actually going on.

Edit:
I guess that's one of the places where actual comments would help a lot...

Don't know about PHP but I've seen this done in Javascript to implement a deep copy function as well. It's incredibly straightforward, and I honestly really like it. There are a few pitfalls but it works pretty well for a large number of situations. http://stackoverflow.com/questions/122102/what-is-the-most-efficient-way-to-clone-an-object
spinesheath
Profile Blog Joined June 2009
Germany8679 Posts
January 06 2016 07:58 GMT
#13963
On January 06 2016 10:42 Manit0u wrote:
Show nested quote +
On January 06 2016 10:29 aksfjh wrote:
On January 06 2016 05:19 Morfildur wrote:
On January 06 2016 03:24 Manit0u wrote:

$response = json_decode(json_encode($this->curl->response), true);


Why?! T_T


It's actually not too uncommon. It's a quick way to turn an object tree into an array. It's not exceptionally fast and it really should be in some properly named function somewhere, but the code in itself isn't bad.

Depends on your definition of "bad." It works, but I know some devs that would skewer you for that.


Holy crap. You guys just enlightened me. When I first saw it I was like "why would you encode stuff that you're about to decode instead of just leaving it as it is". Then you two answered and it dawned on me.

I have to agree that even if it works it's still really bad because it's not obvious/explicit enough to tell a person who hasn't seen it before what's actually going on.

Edit:
I guess that's one of the places where actual comments would help a lot...

It definitely should be wrapped into a function. That way you can use it without needing to understand. When it's encapsulated properly, it doesn't look so bad (unless there is an obvious equivalent, shorter and more straightforward implementation).
If you have a good reason to disagree with the above, please tell me. Thank you.
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
January 06 2016 10:28 GMT
#13964
--- Nuked ---
Manit0u
Profile Blog Joined August 2004
Poland17800 Posts
January 06 2016 12:04 GMT
#13965
On January 06 2016 19:28 Nesserev wrote:
Show nested quote +
On January 05 2016 08:55 Manit0u wrote:
Required reading before you ask any more questions:

http://www.sitepoint.com/web-site-basics-beginners/

https://developer.mozilla.org/en-US/docs/Web/Guide/Introduction_to_Web_development

http://coding-geek.com/how-databases-work/

http://code.tutsplus.com/tutorials/mvc-for-noobs--net-10488

https://developer.chrome.com/apps/app_frameworks (it's about JS but general concepts stay the same)

Edit:
Also, if you really want to learn Django properly, please get this book: http://shop.oreilly.com/product/0636920029533.do

It's amazing.


Should've mentioned that the book is available for free online:
http://chimera.labs.oreilly.com/books/1234000000754/index.html


Didn't know that. I only read paper books. I need this tactile feeling and e-books somehow don't work for me (my Kindle lies on the shelf not being used for several years). Also, by buying the book I support the author and I don't mind buying good books
Time is precious. Waste it wisely.
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
January 06 2016 17:15 GMT
#13966
--- Nuked ---
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
Last Edited: 2016-01-06 19:07:50
January 06 2016 19:07 GMT
#13967
Has anyone used matlab? I'm currently translating some code from matlab and I find it very hard to understand what is what because data types aren't declared. That, and the language is new to me. I'm used to C style syntax. Any advice?
tofucake
Profile Blog Joined October 2009
Hyrule19230 Posts
January 06 2016 20:23 GMT
#13968
you have 2 options with matlab:
1. be an expert
2. flounder blindly until you get the results you want

I've never met anyone who was "ok" or "decent" at matlab
Liquipediaasante sana squash banana
Deleted User 3420
Profile Blog Joined May 2003
24492 Posts
Last Edited: 2016-01-07 02:32:52
January 07 2016 01:28 GMT
#13969
okay, I have a legit question about this TDD book I was recommended.

I am in a section where I am running this test:


def test_home_page_returns_correct_html(self):
request = HttpRequest()
request.method = 'POST'
request.POST['item_text'] = 'A new list item'

response = home_page(request)

self.assertIn('A new list item', response.content.decode())
expected_html = render_to_string(
'home.html',
{'new_item_text': 'A new list item'}
)
print(expected_html)
print(response.content.decode())
self.assertEqual(response.content.decode(), expected_html)


I added the two print statements to see why I was getting a different error than what is in the book.

The error that he gets in the book is:


ERROR: test_home_page_returns_correct_html (lists.tests.HomePageTest) [...] 'new_item_text': request.POST['item_text'], KeyError: 'item_text'



I get a much different error, basically saying that the actual html and the decoded content don't match

and after printing them, the reason is because the actual html has

<input type='hidden' name='csrfmiddlewaretoken' value='dZrKJSMg5KzxomI3LCeFArGXoW991SgX' />

in it. because of the {% csrf_token %}

But we are using POST, which means afaik I *have* to have the csrf token in order to use my view at all. Furthermore, he specifically had me write the csrf token in.

But then that leads me to the question - why isn't he having this problem??
Or more importantly, what can I do to make my expected_html match the actual html when there is a csrf token that, if my understanding is correct, will change every time i run it? lol


edit: it looks like its because im using django 1.9 and he uses 1.8.
found a workaround. couldn't figure out how to do it myself lol
Acrofales
Profile Joined August 2010
Spain18393 Posts
January 07 2016 01:51 GMT
#13970
On January 07 2016 05:23 tofucake wrote:
you have 2 options with matlab:
1. be an expert
2. flounder blindly until you get the results you want

I've never met anyone who was "ok" or "decent" at matlab

I do the latter. I flounder similarly in R. Due to this, I do most of my data analysis in python, which requires far less floundering, and although its libraries are less powerful, it has most of the tools I need.
solidbebe
Profile Blog Joined November 2010
Netherlands4921 Posts
January 07 2016 07:32 GMT
#13971
On January 07 2016 04:07 darkness wrote:
Has anyone used matlab? I'm currently translating some code from matlab and I find it very hard to understand what is what because data types aren't declared. That, and the language is new to me. I'm used to C style syntax. Any advice?

Im pretty sure matlab has just one datatype, matrices.
That's the 2nd time in a week I've seen someone sig a quote from this GD and I have never witnessed a sig quote happen in my TL history ever before. -Najda
WarSame
Profile Blog Joined February 2010
Canada1950 Posts
January 07 2016 07:51 GMT
#13972
Instead of addition they actually add 2 1x1 matrices. Honestly, I never could handle that language. It's always hard to switch over to another language where you don't even know how to do the most basic functions. It's not fun becoming a beginner again.
Can it be I stayed away too long? Did you miss these rhymes while I was gone?
Manit0u
Profile Blog Joined August 2004
Poland17800 Posts
January 07 2016 11:26 GMT
#13973
On January 07 2016 10:28 travis wrote:
okay, I have a legit question about this TDD book I was recommended.

I am in a section where I am running this test:


def test_home_page_returns_correct_html(self):
request = HttpRequest()
request.method = 'POST'
request.POST['item_text'] = 'A new list item'

response = home_page(request)

self.assertIn('A new list item', response.content.decode())
expected_html = render_to_string(
'home.html',
{'new_item_text': 'A new list item'}
)
print(expected_html)
print(response.content.decode())
self.assertEqual(response.content.decode(), expected_html)


I added the two print statements to see why I was getting a different error than what is in the book.

The error that he gets in the book is:

Show nested quote +

ERROR: test_home_page_returns_correct_html (lists.tests.HomePageTest) [...] 'new_item_text': request.POST['item_text'], KeyError: 'item_text'



I get a much different error, basically saying that the actual html and the decoded content don't match

and after printing them, the reason is because the actual html has
Show nested quote +

<input type='hidden' name='csrfmiddlewaretoken' value='dZrKJSMg5KzxomI3LCeFArGXoW991SgX' />

in it. because of the {% csrf_token %}

But we are using POST, which means afaik I *have* to have the csrf token in order to use my view at all. Furthermore, he specifically had me write the csrf token in.

But then that leads me to the question - why isn't he having this problem??
Or more importantly, what can I do to make my expected_html match the actual html when there is a csrf token that, if my understanding is correct, will change every time i run it? lol


edit: it looks like its because im using django 1.9 and he uses 1.8.
found a workaround. couldn't figure out how to do it myself lol


You should be using the latest LTS version of the framework (and that's 1.8 for Django).
Time is precious. Waste it wisely.
Manit0u
Profile Blog Joined August 2004
Poland17800 Posts
Last Edited: 2016-01-07 17:35:33
January 07 2016 17:11 GMT
#13974
Edit: Nevermind. Stupid me. There were some values < 0 so floor returned seemingly higher numbers (they were converted to absolute values AFTER flooring).
Time is precious. Waste it wisely.
Deleted User 3420
Profile Blog Joined May 2003
24492 Posts
January 07 2016 20:50 GMT
#13975
I have a couple questions about the commonly seen "self" parameter in python

It seems to have the same purpose as "this" in java. except from what I read, self isn't actually a keyword, so it can be anything

so a couple questions I have - is this parameter required in all methods you write in python?
is this parameter basically just saying "from now on this is how this method can refer to itself"
and finally - why? why not just use "this" like in java?
Manit0u
Profile Blog Joined August 2004
Poland17800 Posts
January 07 2016 21:22 GMT
#13976
On January 08 2016 05:50 travis wrote:
I have a couple questions about the commonly seen "self" parameter in python

It seems to have the same purpose as "this" in java. except from what I read, self isn't actually a keyword, so it can be anything

so a couple questions I have - is this parameter required in all methods you write in python?
is this parameter basically just saying "from now on this is how this method can refer to itself"
and finally - why? why not just use "this" like in java?


http://stackoverflow.com/questions/2709821/what-is-the-purpose-of-self-in-python
Time is precious. Waste it wisely.
Deleted User 3420
Profile Blog Joined May 2003
24492 Posts
January 07 2016 21:36 GMT
#13977
I already read that. I think I get a grasp of how it works, for the most part. And why, for the most part. I just don't see the advantage of doing it this way instead of just having a keyword. It actually seems like it's making it more complicated instead of less, which is something I haven't seen in python so far.

Maybe this is a question I will need to ask myself in 6 months.
Prillan
Profile Joined August 2011
Sweden350 Posts
January 07 2016 22:01 GMT
#13978
On January 08 2016 06:36 travis wrote:
I already read that. I think I get a grasp of how it works, for the most part. And why, for the most part. I just don't see the advantage of doing it this way instead of just having a keyword. It actually seems like it's making it more complicated instead of less, which is something I haven't seen in python so far.

Maybe this is a question I will need to ask myself in 6 months.

I think that the most important point is that it makes it explicit, so that methods are just normal functions attached to a class. Consider the example by Guido van Rossum (the creator of Python).
class C:
def meth(self, arg):
self.val = arg
return self.val

An equivalent way of writing the above is
# Define an empty class:
class C:
pass

# Define a global function:
def meth(myself, arg):
myself.val = arg
return myself.val

# Poke the method into the class:
C.meth = meth

Source: http://neopythonic.blogspot.se/2008/10/why-explicit-self-has-to-stay.html


Then we have decorators, which modify functions. Because of the explicit self parameter, they work the same on methods.

# Decorator that prints all arguments passed to the wrapped function
def printer(f):
def wrapper(*args, **kwargs):
print(args, kwargs)
return f(*args, **kwargs)
return wrapper


class A:
@printer
def method(self, x):
self.y = x

@printer
def function(x, y):
return x + y


Which results in
>>> a = A()
>>> a.method(1)
(<__main__.A object at 0x769d3dd0>, 1) {}
>>> function(1, 2)
(1, 2) {}
3
TheBB's sidekick, aligulac.com | "Reality is frequently inaccurate." - Douglas Adams
Manit0u
Profile Blog Joined August 2004
Poland17800 Posts
Last Edited: 2016-01-07 22:20:04
January 07 2016 22:02 GMT
#13979
On January 08 2016 06:36 travis wrote:
I already read that. I think I get a grasp of how it works, for the most part. And why, for the most part. I just don't see the advantage of doing it this way instead of just having a keyword. It actually seems like it's making it more complicated instead of less, which is something I haven't seen in python so far.

Maybe this is a question I will need to ask myself in 6 months.


You think this is complicated? PHP has both self and this. And in JavaScript you often see stuff like that:


var self = this;


Try figuring those out

Edit:
Not for the faint of heart: http://alistapart.com/article/getoutbindingsituations
Time is precious. Waste it wisely.
emperorchampion
Profile Blog Joined December 2008
Canada9496 Posts
Last Edited: 2016-01-07 23:00:06
January 07 2016 22:15 GMT
#13980
On January 07 2016 04:07 darkness wrote:
Has anyone used matlab? I'm currently translating some code from matlab and I find it very hard to understand what is what because data types aren't declared. That, and the language is new to me. I'm used to C style syntax. Any advice?


Anything in particular you need to know about? Matlab is pretty frustrating to work with sometimes, but it's easy to get results quickly and everything is built in. It really depends on the scope of your project, but you should probably make functions for most things in separate files even if it's small. I've gotten burned pretty bad in the past with thinking "oh this is just going to be a small program, I don't need any functions..." then you end up adding and adding and adding... >_< It's really annoying that you can't have functions within the main file, but anyhow.


A couple pointers:
- matrices are (row, column), there is no 0 index
- Try to make the most use of the indexing A(:,:) (all rows and columns of A), or A(2:end, 3:end-1), ect.
- Try to replace loops with indexing, much faster and easier, loops should be the last option imo, built in functions or index are the way to go
- You can concatenate matrices B = [A(:,[1,2]), C(:,:)], (assuming similar dimensions of A and C)
- concatenate by row B = [A([1,2],:) ; C]
- "push-back": a = [a, b]
- make use of google to find out functions, there are a ton of them


On January 07 2016 16:32 solidbebe wrote:
Im pretty sure matlab has just one datatype, matrices.


Pretty much, and cells, which are the most annoying thing ever to work with.
TRUEESPORTS || your days as a respected member of team liquid are over
Prev 1 697 698 699 700 701 1032 Next
Please log in or register to reply.
Live Events Refresh
Next event in 5h 57m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft480
NeuroSwarm 182
RuFF_SC2 170
FoxeR 45
StarCraft: Brood War
Artosis 1030
Pusan 336
yabsab 13
firebathero 0
League of Legends
JimRising 688
Counter-Strike
summit1g10087
Super Smash Bros
hungrybox688
Heroes of the Storm
Khaldor148
Other Games
Doublelift3272
WinterStarcraft441
Maynarde281
ViBE206
ROOTCatZ60
Nathanias18
Organizations
Other Games
gamesdonequick1281
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 13 non-featured ]
StarCraft 2
• Hupsaiya 101
• davetesta3
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• iopq 1
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Upcoming Events
RSL Revival
5h 57m
Clem vs ByuN
Rogue vs Lambo
OSC
8h 57m
Online Event
11h 57m
WardiTV Weekly
1d 7h
Sparkling Tuna Cup
2 days
INu's Battles
2 days
Cure vs herO
ByuN vs Rogue
PiGosaur Cup
2 days
The PondCast
3 days
Kung Fu Cup
3 days
Patches Events
3 days
[ Show More ]
Replay Cast
4 days
CrankTV Team League
4 days
Replay Cast
4 days
CrankTV Team League
5 days
Replay Cast
5 days
Afreeca Starleague
6 days
RSL Revival
6 days
WardiTV Summer Champion…
6 days
Liquipedia Results

Completed

ASL S22 SEASON OPEN Day 2
HSC XXIX
Eternal Conflict S2 E3

Ongoing

CSL 2026 Summer (S21)
KCM Race Survival 2026 Season 3
RSL Revival: Season 6
CranK Gathers Season 4: BW vs SC2 Team League
SCTL 2026 Spring
Eternal Conflict S2 Finale
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026

Upcoming

Escore Tournament S3: W5
ASL Season 22: Qualifier #1
ASL Season 22: Qualifier #2
CSLAN 4
ASL Season 22
Blizzard Classic Cup 2026
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
PiG Sty Festival 8.0
Light Tournament 2026
ESL Pro League Season 24
Stake Ranked Episode 4
Logitech G Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #5
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.