• Activity
  • Votes
  • Comments
  • New
  • All activity
    1. Where would a beginner start with data compression? What are some good books for it?

      Mostly the title. I have experience with Python, and I was thinking of learning more about data compression. How should I proceed? And what are some good books I could read, both about specifics...

      Mostly the title. I have experience with Python, and I was thinking of learning more about data compression. How should I proceed? And what are some good books I could read, both about specifics and abstracts of data compression, data management, data in general.

      15 votes
    2. ~music Weekly Music Tracks Thread 1 - Uplifting Earworms

      Some people have mentioned they'd like to have some sort of weekly track-sharing thread, so let's have a little fun and find some good music in the process. Everybody's got that playlist somewhere...

      Some people have mentioned they'd like to have some sort of weekly track-sharing thread, so let's have a little fun and find some good music in the process.

      Everybody's got that playlist somewhere with all of your favorite earworms - the songs you put on repeat to the point where you annoy the hell out of everyone else in the room because you love them so much. Let's collect some of those earworms here and see what we can come up with.

      In particular, let's go for the uplifting kind - feel good music. When the thread settles down I'll pull these all together in a nice playlist and share that here as a separate link submission.

      Any time period, any genre, any style, popular, obscure, or even your own music, it's all good - just as long as it's positive energy and you can't stop spinning it. If you're on mobile, don't worry about making it into links, others can linkify it for you (and eventually, Tildes can do that automatically to make this all easier in the future). Share as many as you've got. If you've already got a playlist like this for yourself, you can share that too. ;)

      Oh, and don't worry about nebulous 'standards' or if people will like it. If you like it, that's all that matters. Don't overthink it!

      Edit: Almost forgot, feel free to make suggestions for the topics of upcoming share threads in the next few weeks!

      13 votes
    3. Suggestions regarding clickbait and misinformation

      One thing (amongst many) that always bothered me in my 6+ years of using Reddit was their lax rules about posting clickbait articles and straight up misinformation. In my opinion this was...

      One thing (amongst many) that always bothered me in my 6+ years of using Reddit was their lax rules about posting clickbait articles and straight up misinformation. In my opinion this was something that contributed to the rise of radical communities and echochambers in the website.

      In this post I'll talk about Clickbait, Unreliable studies, and Misinformation. I'll give examples for each one and suggest a way to deal with it.

      Clickbait-

      Let's start with the most benign one. These days most big websites use clickbait and hyperbole to gain more traffic. It's something that they have to do in order to survive in today's media climate and I sort of understand. But I think that as a community in Tildes we should raise our standards and avoid posting any article that uses clickbait, instead directly link to the source that the article cites.

      An example would be: An article titled "Life on Mars found: Scientists claim that they have found traces of life on the red planet".

      But when you read the original source it only states that "Mars rover Curiosity has identified a variety of organic molecules" and that "These results do not give us any evidence of life,".
      (This may be a bad/exaggrated example but I think it gets my point across.)

      On Reddit the mods give these kinds of posts a "Misleading" tag. But the damage is already done, most of the users won't read the entire article or even the source, and instead will make comments based on the headline.
      I personally think that these kinds of posts should be deleted even if they get a discussion going in the comments.

      Unreliable studies-

      This is a bit more serious than clickbait. It's something that I see the most in subjects of psychology, social science and futurism.
      These are basically articles about studies that conclude a very interesting result, but when you dig a bit you find that the methodologies used to conduct the study were flawed and that the results are inconclusive.

      An (real) example would be: "A new study finds that cutting your time on social media to 30 minutes a day reduces your risk of depression and loneliness"
      Link: https://www.businessinsider.com/facebook-instagram-snapchat-social-media-well-being-2018-11

      At first glance this looks legit, I even agree with the results. But lets see how this study was conducted:

      In the study, 143 undergraduate students were tested over the course of two semesters.

      After three weeks, the students were asked questions to assess their mental health across seven different areas

      Basically, their test group was 143 students, The test was only conducted for 6 months, and the results were self-reported.

      Clearly, this is junk. This study doesn't show anything reliable. Yet still, it received a lot of upvotes on Reddit and there was a lot of discussion going. I only spotted 2-3 comments (at the bottom) mentioning that the study is unreliable.

      Again, I think that posts with studies like this should be deleted regardless if there is a discussion going in the comments or not.

      Misinformation-

      This is in my opinion the biggest offender and the most dangerous one. It's something that I see in political subreddits (even the big ones like /r/politics and /r/worldnews). It's when an article straight up spreads misinformation both in the headline and in the content in order to incite outrage or paint a narrative.

      Note: I will give an example that bashes a "left-leaning" article that is against Trump. I'm only doing this because I only read left-leaning to neutral articles and don't go near anything that is right-leaning. Because of this I don't have any examples of a right-leaning article spreading misinformation (I'm sure that there are a lot).

      An example would be this article: "ADMINISTRATION ADMITS BORDER DEPLOYMENT WAS A $200 MILLION ELECTION STUNT"
      Link: https://www.vanityfair.com/news/2018/11/trump-troops-border-caravan-stunt

      There are two lies here:

      1. Trump administration did not admit to anything. (The article's use of the word 'Admit' is supposedly justified with 'They indirectly admitted to it'. I personally think this is a bad excuse.)
      2. Most importantly, the 200 million figure is pure speculation. If you go to the older article that this article cites, the 200m figure comes from a speculation that the operation could cost up to 200m if the number of troops sent to the border is 15,000 and they stay there for more than 2 months.
        In reality the number of troops sent was 8,500 and they stayed for only a few days/weeks.

      A few days after this article was published it turned out that the operation costed 70 million. Still a big sum, still ridiculous. But it's almost a third of what the article claimed.

      The misinformation in this example is fairly benign. But I've seen countless other articles with even more outrageous claims that force a certain narrative. This is done by both sides of the political spectrum.

      Not only do I think that we should delete these kinds of posts in Tildes, in my opinion we should black list websites that are frequent offenders of spreading misinformation.
      Examples off the top of my head would be: Vanity Fair, Salon.com, of course far right websites like Fox News, Info Wars and Breitbart.
      A good rule in my opinion would be: If three posts from a certain website get deleted for spreading misinformation, that website should be blacklisted from Tildes.

      In conclusion:
      I think we should set some rules against these problems while our community is still in the early stages. Right now I don't see any of these 3 problems on Tildes. But if we don't enforce rules against them, they will start to pop up the more users we gain.

      I'll be happy to know your opinions and suggestions on the matter!

      32 votes
    4. An Alternative Approach to Configuration Management

      Preface Different projects have different use cases that can ultimately result in common solutions not suiting your particular needs. Today I'm going to diverging a bit from my more abstract,...

      Preface

      Different projects have different use cases that can ultimately result in common solutions not suiting your particular needs. Today I'm going to diverging a bit from my more abstract, generalized topics on code quality and instead focus on a specific project structure example that I encountered.


      Background

      For a while now, I've found myself being continually frustrated with the state of my project configuration management. I had a single configuration file that would contain all of the configuration options for the various tools I've been using--database, API credentials, etc.--and I kept running into the problem of wanting to test these tools locally while not inadvertently committing and pushing sensitive credentials upstream. For me, part of my security process is ensuring that sensitive access credentials never make it into the repository and to limit access to these credentials to only people who need to be able to access them.


      Monolithic Files Cause Monolithic Pain

      The first thing I realized was that having a single monolithic configuration file was just terrible practice. There are going to be common configuration options that I want to have in there with default values, such as local database configuration pointing to a database instance running on the same VM as the application. These should always be in the repo, otherwise any dev who spins up an instance of the VM will need to manually tread documentation and copy-paste the missing options into the configuration. This would be incredibly time-consuming, inefficient, and stupid.

      I also use different tools which have different configuration options associated with them. Having to dig through a single file containing configuration options for all of these tools to find the ones I need to modify is cumbersome at best. On top of that, having those common configuration options living in the same place that sensitive access credentials do is just asking for a rogue git commit -A to violate the aforementioned security protocol.


      Same Problem, Different Structure

      My first approach to resolving this problem was breaking the configuration out into separate files, one for each distinct tool. In each file, a "skeleton" config was generated, i.e. each option was given a default empty value. The main config would then only contain config options that are common and shared across the application. To avoid having the sensitive credentials leaked, I then created rules in the .gitignore to exclude these files.

      This is where I ran into problem #2. I learned that this just doesn't work. You can either have a file in your repo and have all changes to that file tracked, have the file in your repo and make a local-only change to prevent changes from being tracked, or leave the file out of the repo completely. In my use case, I wanted to be able to leave the file in the repo, treat it as ignored by everyone, and only commit changes to that file when there was a new configuration option I wanted added to it. Git doesn't support this use case whatsoever.

      This problem turned out to be really common, but the solution suggested is to have two separate versions of your configuration--one for dev, and one for production--and to have a flag to switch between the two. Given the breaking up of my configuration, I would then need twice as many files to do this, and given my security practices, this would violate the no-upstream rule for sensitive credentials. Worse still, if I had several different kinds of environments with different configuration--local dev, staging, beta, production--then for m such environments and n configuration files, I would need to maintain n*m separate files for configuration alone. Finally, I would need to remember to include a prefix or postfix to each file name any time I needed to retrieve values from a new config file, which is itself an error-prone requirement. Overall, there would be a substantial increase in technical debt. In other words, this approach would not only not help, it would make matters worse!


      Borrowing From Linux

      After a lot of thought, an idea occurred to me: within Linux systems, there's an /etc/skel/ directory that contains common files that are copied into a new user's home directory when that user is created, e.g. .bashrc and .profile. You can make changes to these files and have them propagate to new users, or you can modify your own personal copy and leave all other new users unaffected. This sounds exactly like the kind of behavior I want to emulate!

      Following their example, I took my $APPHOME/config/ directory and placed a skel/ subdirectory inside, which then contained all of the config files with the empty default values within. My .gitignore then looked something like this:

      $APPHOME/config/*
      !$APPHOME/config/main.php
      !$APPHOME/config/skel/
      !$APPHOME/config/skel/*
      # This last one might not be necessary, but I don't care enough to test it without.
      

      Finally, on deploying my local environment, I simply include a snippet in my script that enters the new skel/ directory and copies any files inside into config/, as long as it doesn't already exist:

      cd $APPHOME/config/skel/
      for filename in *; do
          if [ ! -f "$APPHOME/config/$filename" ]; then
              cp "$filename" "$APPHOME/config/$filename"
          fi
      done
      

      (Note: production environments have a slightly different deployment procedure, as local copies of these config files are saved within a shared directory for all releases to point to via symlink.)

      All of these changes ensure that only config/main.php and the files contained within config/skel/ are whitelisted, while all others are ignored, i.e. our local copies that get stored within config/ won't be inadvertently committed and pushed upstream!


      Final Thoughts

      Common solutions to problems are typically common for a good reason. They're tested, proven, and predictable. But sometimes you find yourself running into cases where the common, well-accepted solution to the problem doesn't work for you. Standards exist to solve a certain class of problems, and sometimes your problem is just different enough for it to matter and for those standards to not apply. Standards are created to address most cases, but edge cases will always exist. In other words, standards are guidelines, not concrete rules.

      Sometimes you need to stop thinking about the problem in terms of the standard approach to solving it, and instead break it down into its most abstract, basic form and look for parallels in other solved problems for inspiration. Odds are the problem you're trying to solve isn't as novel as you think it is, and that someone has probably already solved a similar problem before. Parallels, in my experience, are usually a pretty good indicator that you're on the right track.

      More importantly, there's a delicate line to tread between needing to use a different approach to solving an edge case problem you have, and needing to restructure your project to eliminate the edge case and allow the standard solution to work. Being able to decide which is more appropriate can have long-lasting repercussions on your ability to manage technical debt.

      16 votes
    5. Recommendation for new Oculus compatible machine help

      Hey all. My old computer is fine, but the Oculus software has recently pushed an update where it no longer starts up, attempting to repair the software uninstalled it, and the install errors out...

      Hey all. My old computer is fine, but the Oculus software has recently pushed an update where it no longer starts up, attempting to repair the software uninstalled it, and the install errors out despite clearing out the install cache and existing files while running it in network capable Safe mode with Defender off as recommended.

      Eventually I narrowed it down to this error. https://forums.oculusvr.com/community/discussion/71083/cant-install-software-exiting-with-code-18 and since I'm using an old HP xw8400 build with two Xeon 5355 processors, it does kind of check out that this latest update finally became incompatible with my processor and it may be time to upgrade anyway. To my knowledge, there isn't really a way to get a more modern processor onto the motherboard, and I'm not going to rage at Oculus for not supporting hardware they were never supporting in the first place. (Auto Update and being unable to downgrade is meh, but I'm not going to win that fight.)

      So what would you guys recommended for a new processor/ram/motherboard combination? My Graphics Card (RX480) and hard drive is still fine, and I'd like to keep it on the cheap for as much as we can do with VR.

      6 votes
    6. As someone with ADHD, I hate the "RTFM" motto

      I'm a student of software engineering. I'm not a programmer yet, but I use software that is common among this crowd, like i3wm, Neovim and Emacs. I know how to find and read documentation. I've...

      I'm a student of software engineering. I'm not a programmer yet, but I use software that is common among this crowd, like i3wm, Neovim and Emacs. I know how to find and read documentation. I've read the obnoxious How To Ask Questions the Smart Way. Every time I encounter an issue, I do my diligence. I go through the manuals, I google, I read the docs. My main editor, Emacs, has an extensive manual, with plenty of accurate details. I get that's a huge program (more like a platform, really), but let's just say that a black-and-white 650 pages PDF is not the most ADHD friendly thing in the world.

      I'm aware that I chose a career that requires plenty of reading, but I happen to like it a lot and it seems like I have some aptitude for it. I had similar issues in my previous activities anyway. But it's discouraging trying to understand programming and complex software, only to be repelled by people who think everyone has their ability for concentration. Sometimes I completely lose track of time. I can sit on my computer and hyperfocus for up to 48 hours with 20 Chrome tabs open non-stop and Netflix on the background. I may seem productive, but I'm not reading anything. Maybe I read one paragraph or two, and 30 seconds later I can't remember what I was doing. But I still have tasks to accomplish, and sometimes I need help to find useful information on a 700 pages manual.

      Luckily I have a great support and determination and have accomplished a lot, but my peers have no idea what I went through to get to where I am. What I don't have in natural born skills I compensate with a lot of raw effort. Everyone has their difficulties and I'm not seeking compassion, but I'd like to suggest people think twice before dismissing as "lazy" someone you know nothing about. That person might have a mental disorder, a reading disorder or even an intellectual disability. Do you wanna be the guy who told a dyslexic to just read the fucking manual?

      EDIT: of course I get that time and energy are limited commodities... my point is: don't be an asshole about it. Do what you can and you wanna do, but there's no need to use hostile buzzwords when you communicate with less knowledgeable people. You're not even forced to answer... I much prefer not getting an answer than getting a hostile one.

      26 votes
    7. European Soccer - This week results (10.10.2018) - *Includes UEFA Nations League results*

      First of all, I want to apologise for the delay of this weekly post. Yesterday I did not have the time to write it, because with the inclusion of the Nations League it would have taken me time I...

      First of all, I want to apologise for the delay of this weekly post. Yesterday I did not have the time to write it, because with the inclusion of the Nations League it would have taken me time I did not have.
      With that being said, here are last week national and international results:

      UEFA Nations League - Matchweek 5-6

      The four group winners of League A qualify for the Nations League Finals in June 2019:
      Netherlands, Switzerland, Portugal, England

      The following teams are promoted to a higher league:
      B->A Ukraine, Sweden, Bosnia & Erzegovina, DenmarK
      C->B Scotland, Finland, Norway, Serbia
      D->C Georgia, Belarus, Kosovo, FYR Macedonia

      The following teams are relegated to a lower league:
      A->B Germany, Iceland, Poland, Croatia
      B->C Slovakia, Turkey, Northern Ireland, Ireland
      C->D Estonia, Slovenia, Cyprus, Lithuania

      Match Score Statistics
      League A - Group 1
      Germany-Netherlands 2-2 9' Werner T., 20' Sane L.; 85' Promes Q., 90+1' van Dijk V.
      Netherlands-France 2-0 44' Wijnaldum G., 90+6'(Pen) Depay M.
      League A - Group 2
      Switzerland-Belgium 5-2 26'(Pen) Rodriguez R., 31', 44', 84' Seferovic H., 62' Elvedi N.; 2', 17' Hazard T.
      Belgium-Iceland 2-0 65', 81' Btshuayi M.
      League A - Group 3
      Portugal-Poland 1-1 34' Silva An.; 66'(Pen) Milik A.
      Italy-Portugal 0-0
      League A - Group 4
      England-Croatia 2-1 78' Lingard J., 85' Kane H.; 57' Kramaric A.
      Croazia-Spain 3-2 54' Kramaric A., 67', 90+3' Jedvaj T.; 56' Ceballos D., 78'(Pen) Ramos S.
      League B - Group 1
      Czech Republic-Slovakia 1-0 32' Schick P.
      Slovakia-Ukraine 4-1 6' Rusnak A., 26' Kucka J., 52' Zrelak A., 61' Mak R.; 47' Konoplyanka E.
      League B - Group 2
      Sweden-Russia 2-0 41' Lindelof V., 72' Berg M.
      Turkey-Sweden 0-1 71' Granqvist A.
      League B - Group 3
      Northern Ireland-Austria 1-2 57' Evans C.; 49' Schlager X., 90+3' Lazaro V.
      Austria-Bosnia & Herzegovina 0-0
      League B - Group 4
      Denmark-Ireland 0-0
      Wales-Denmark 1-2 89' Bale G.; 42' Jorgensen N., 88' Braithwaite M.
      League C - Group 1
      Scotland-Israel 3-2 34', 43', 64' Forrest J.; 9' Kayal B., 75' Zahavi E.
      Albania-Scoltland 0-4 14' Fraser R., 45+2' Fletcher(Pen), 55', 67' Forrest J.
      League C - Group 2
      Greece-Estonia 0-1 44ì(OG) Lambropoulos K.
      Hungary-Finland 2-0 29' Szalai A., 37' Nagy A.
      Greece-Finland 1-0 25'(OG) Granlund A.
      Hungary-Estonia 2-0 8' Orban W., 69' Szalai A.
      League C - Group 3
      Bulgaria-Slovenia 1-1 68' Ivanov G; 75' Zajc M.
      Cyprus-Norway 0-2 36', 48' Kamara O.
      Cyprus-Bulgaria 1-1 24' Zachariou P.; 89'(Pen) Dimitrov N.
      Slovenia-Norway 1-1 9' Verbic B.; 85' Johnsen B.
      League C - Group 4
      Montenegro-Romania 0-1 44' Tucudean G.
      Serbia-Lithuania 4-1 51'(OG) Zulpa A., 58' Mitrovic A., 71' Prijovic A., Ljajic A.; 64' Petravicius D.
      Romania-Lithuania 3-0 7' Puscas G., 47' Keseru C., 65' Stanciu N.
      Serbia-Montenegro 2-1 30' Ljajic A., 32' Mitrovic A.; 70' Mugosa S.
      League D - Group 1
      Andorra-Latvia 0-0
      Georgia-Kazakhstan 2-1 59' Merebashvili G., 84' Chakvetadze G.; 90' Omietayev O.
      Andorra-Georgia 1-1 63' Martinez C.; 9' Chakvetadze G.
      Kazakhstan-Latvia 1-1 377' Suyumbayev G.; 49' Rakeis D.
      League D - Group 2
      Moldova-Luxemburg 1-1 58'(Pen) Ginsari R.; 70' Bensi S.
      San Marino-Belarus 0-2 8' Dragun S.,52' Saroka A.
      Luxemburg-Belarus 0-2 37', 54' Dragun S.
      San Marino-Moldova 0-1 78' Damascan V.
      League D - Group 3
      Kosovo-Azerbaijan 4-0 2', 50', 76' Zeneli A., 61' Rrahamani A.
      Malta-Faroe Islands 1-1 4' Corbolan J.; 3' Joensen R.
      Azerbaijan-Faroe Islands 2-0 18'(OG) Nattestad S., 28' Madatov M.
      Malta-Kosovo 0-5 15' Muriqi V., 70' Kololli B., 78', 80' Avdijaj D, 86' Rashica M.
      League D - Group 4
      FYR Macedonia-Gibiltar 4-0 27' Bardhi E., 67', 80' Nestorowski I., 82' Velkoski D.
      Liechtenstein-Armenia 2-2
      Gibraltar-Armenia 2-6 10' De Barr T., 78' Priestley A.; 27', 48', 52', 54' Movsisyan Y., 66' Karapetian A., 90+4' Karapetian A.
      Liechtenstein-FYR Macedonia 0-2 53' Bardhi E., 90+1' Nestorowski I.

      English Premier League - Matchweek 13

      Match Score Statistics
      Burnley-Newcastle 1-2 40' Vokes S.; 4'(OG) Mee B., 23' Clark C.
      Bournemouth-Arsenal 1-2 45+1' King J.; 30'(OG) Lerma J., 67' Aubameyang P.
      Brighton-Leicester 1-1 15' Murray G.; 78'(Pen) Vardy J.
      Everton-Cardiff 1-0 59' Sigurdsson G.
      Fulham-Southampton 3-2 33', 63' Mitrovic A., 63' Schurrle A.; 18', 54' Armstrong S.
      Manchester Utd-Crystal Palace 0-0
      Tottenham-Chelsea 3-1 8' Alli D., Kane H., 54' Son Heung-Min; 85' Giroud O.
      Watford-Liverpool 0-3 67' Salah M., 76' Alexander-Arnold, 89' Firmino R.
      West Ham-Manchester City 0-4 11' Silva D., 19' Sterling R., 34', 90+3' Sane L.
      Wolves-Huddersfield 0-2 6', 74' Mooy A

      LaLiga - Matchweek 13

      Match Score Statistics
      Real Sociedad-Celta Vigo 2-1 37' Oyarzabal M., 47' Zurutuza D.; 82' Gomez M.
      Atheltic Bilbao-Getafe 1-1 67' Nolaskoain P.; 77' Mata J.
      Atlético Madrid-Barcelona 1-1 77' Costa D.; 90' Dembele O.
      Eibar-Real Madrid 3-0 16' Escalante G., 52' Enrich S., 57' Kike
      Espanyol-Girona 1-3 4', 6' Stuani C., 90' Doumbia; 74' Iglesias B.
      Huesca-Levante 2-2 23' Riveira C., 51' Etxeita X.; 45+1' Roger M., 74' Boateng E.
      Leganes-Alaves 1-0 42' En Nesyri Y.
      Sevilla-Valladolid 1-0 30' Silva An.
      Valencia-Rayo Vallecano 3-0 35', 61' Mina S., 76' Gameiro K.
      Villarreal-Betis 2-1 52' Moreno, 54' Chukwueze S.; 90' Lo Celso

      Serie A - Matchweek 13

      Match Score Statistics
      Cagliari-Torino 0-0
      Bologna-Fiorentina 0-0
      Empoli-Atalanta 3-2 42' La Gumina A., 77'(OG) Masiello A., 90+2' Silvestre M.; 33' Freuler R., 40' Heteboer H.
      Genoa-Cagliari 1-1 17'(Pen) Piatek K.; 8' Quagliarella F.
      Inter-Frosinone 3-0 10', 82' Keita B., 57' Martinez L.
      Juventus-Spal 2-0 29' Ronaldo C., 60' Mandzukic M.
      Lazio-AC Milan 1-1 90+4' Correa J.; 78'(OG) Wallace
      Napoli-Chievo 0-0
      Parma-Sassuolo 2-1 6' Gervinho, 25' Alves B.; 36'(Pen) Babacar K.
      Udinese-AS Roma 1-0 54' De Paul R.

      Bundesliga - Matchweek 12

      Match Score Statistics
      Augsburg-Eintracht Frankfurt 1-3 90' Cordova S.; 1' de Guzman J., 47' Haller S., 68' Rebic A.
      Bayer Leverkusen-Stuttgart 2-0 76', 83' Volland K.
      Bayern Munich-Dusseldorf 3-3 17' Sule N., 20', 58' Muller T.; 44', 77' 90+3' Lukebakio D.
      Borussia Monchengladbach-Hannover 4-1 7' Hazard T., 44' Lang M., 58' Stindl L., 77' Zakaria D.; 1' Wood B.
      Freiburg-Werder Bremen 1-1 42'(Pen) Waldschmidt G.; 90+2' Augustinsson L.
      Hertha Berlin-Hoffenheim 3-3 12' Ibisevic V., 71' Leckie M., 87' Lazaro V.; 1' Demirbay K., 10' Kramaric A.
      Mainz-Borussia Dortmund 1-2 70' Quaison R.; 66' Alcacer P., 76' Piszczek L.
      Schalke04-Nurnberg 5-2 26', 84' Skrzybski S., 32' Harit A., 70' Burgstaller G., 90+3' Oczipka B.; 38' Palacios-Martinez F., 78' Zrelak A.
      WolfsburgRB Leipzig 1-0 50' Roussillon J.

      Ligue 1 - Matchweek 14

      Match Score Statistics
      Amiens-Marseille 1-3 8' Dibassy B.; 26', 80', 90+1' Thauvin F.
      Caen-Monaco 0-1 55' Falcao
      Dijon-Bordeaux 0-0
      Lyon-Saint Etienne 1-0 62' Denayer J.
      Montpellier-Rennes 2-2 45+1', 49' Delort A.; 5' Ben Arfa H., 71'(Pen) Bourigeaud B.
      Nantes-Angers 1-1 89' Majeed W.; 5' Bahoken S.
      Nice-Lille 2-0 25' Cyprien W., 79' Saint-Maximin A.
      PSG-Toulouse 1-0 9' Cavani E.
      Reims-Guingamp 2-1 2' Chavalerin X., 68' Dia B., 81'(Pen) Thuram M.
      Strasbourg-Nimes 0-1 70' Lybohy H.
      5 votes