Software Development and Programming Careers (Official Discussion Thread)

Matt504

YSL as a gang must end
Joined
Sep 7, 2013
Messages
45,083
Reputation
14,687
Daps
272,825
CheckTheLines

Went through some bullshyt this weekend so made this app to keep busy.

It basically scrapes a few sites and then generates a score that is used to predict how likely a college football team is to cover the spread. Went 4-1 last week :sas2: on the best bets.

very nice.

What api are you using?
 

KritNC

All Star
Joined
Jun 5, 2012
Messages
3,440
Reputation
610
Daps
4,085
Reppin
Costa Rica
very nice.

What api are you using?

I tried for hours to find an API that I could use and I couldn't find shyt. A lot of them have US restrictions or you have to pay a crazy amount per month.

I just went the old sketchy way and scraped all my data from other sources. I got a cron job that is running on Heroku so it will look for updates every hour or so.

Here are some examples of me scraping to find certain variables

T5Gm3NW.png

2GOCMhZ.png
 
Joined
Jan 30, 2016
Messages
1,645
Reputation
150
Daps
3,069
I tried for hours to find an API that I could use and I couldn't find shyt. A lot of them have US restrictions or you have to pay a crazy amount per month.

I just went the old sketchy way and scraped all my data from other sources. I got a cron job that is running on Heroku so it will look for updates every hour or so.

Here are some examples of me scraping to find certain variables

T5Gm3NW.png

2GOCMhZ.png

since you are running cron jobs, then the server's running 24/7. how much a month are you shelling out for that heroku dyno?
 

Data-Hawk

I have no strings on me.
Joined
May 6, 2012
Messages
8,419
Reputation
1,985
Daps
16,285
Reppin
Oasis
gotta be diplomatic with it or else you are painting a target on your back

This is true and I've been in plenty of arguments with other developers. What I've found to shut them up real quick is to aka be diplomatic about about it...lol

1.) Find other companies that are using something similar to your method ( Leads and Managers love this )
2.) Find papers or websites that talk about something similar that you suggest( Industry best practices , white papers etc )
3.) Do it on your own and show them the benefits( I realize this is not always an option )

As programmers we have ego's and think our way is the best way, I've had plenty of code review meetings that were an hour long and we spent 45 minutes arguing over one piece of code. I've found that option #3 quickly eliminates this.
 
Last edited:
Joined
Jan 30, 2016
Messages
1,645
Reputation
150
Daps
3,069
This is true and I've been in plenty of arguments with other developers. What I've found to shut them up real quick is to aka be diplomatic about about it...lol

1.) Find other companies that are using something similar to your method ( Leads and Managers love this )
2.) Find papers or websites that talk about something similar that you suggest( Industry best practices , white papers etc )
3.) Do it on your own and show them the benefits( I realize this is not always an option )

As programmers we have ego's and think our way is the best way, I've had plenty of code review meetings that were an hour long and we spent 45 minutes arguing over one piece of code. I've found that option #3 quickly eliminates this.

this is a great post, i'm gonna save it.

(3) is definitely the most frictionless way of getting your way across. i've tried doing that at my current workplace since im a conflict averse breh but no dice ...

it actually leads into another piece of advice I've heard that I like although it is controversial - it's better to ask for forgiveness than permission. meaning instead of asking your leads whether it's ok to do X or Y, just take the initiative and do it. if they don't like it meh, but only do this for stuff that has a high probability of being received positively (for obvious reasons)
 
Joined
Jun 6, 2015
Messages
6,812
Reputation
-910
Daps
12,788
Reppin
Queens/NYC
Well, before pursuing a game library like MonoGame you're going to have to familiarize yourself with the c# language first.

Here's a simple piece of code I wrote. Do you understand it?

Code:
using System ;
using System.Collections.Generic ;

namespace ConsoleApplication
{

   public class MyApp
    {

        static public int EXIT_SUCCESS = 0 ;

        static public int Main( string[] args )
        {

            CCustomBoxBreh breh = new CCustomBoxBreh ();
            breh.DisplayHeader ();
            breh.MainMenu ();

            Console.ReadLine ();
            return EXIT_SUCCESS;
        }
    }

    public class CCustomBoxBreh
    {

        public CCustomBoxBreh() {
        }

        public void DisplayHeader()
        {

            Console.WriteLine ("**************************************");
            Console.WriteLine ("**");
            Console.WriteLine ("**     CCustomBoxBreh v0.1");
            Console.WriteLine ("**");
            Console.WriteLine ("**************************************");
        }

        public void MainMenu()
        {

            int nWidth = 0, nHeight = 0;
            int reply = 0;

            Console.WriteLine ("Want me to draw a box? (1=yea, 2=nah)");
            reply = int.Parse (Console.ReadLine ());

            switch (reply) {

            case 1:

                Console.WriteLine ("How wide?");
                nWidth = int.Parse (Console.ReadLine ());

                Console.WriteLine ("How tall?");
                nHeight = int.Parse (Console.ReadLine ());

                Console.WriteLine ("Alright here you go: ");
                this.DisplayBox (nWidth, nHeight);

                break;

            case 2:

                Console.WriteLine ("fukk outta here then!");
                break;

            default:

                break;
            }
        }

        private void DisplayBox( int nWidth, int nHeight )
        {

            List<char> strOutput = new List<char> ();

            for (int i = 0; i < nHeight; i++) {
              
                for (int j = 0; j < nWidth; j++)
                    strOutput.Add ('*');

                strOutput.Add ('\n');
            }

            Console.WriteLine (strOutput.ToArray ());
        }
    }
}

MonoGame tutorial playlist: MonoGame Tutorials - YouTube

Thought someone wouldn't notice all that "BrehBreh" shyt huh? :laff:

Those CACs are probably gonna be like "Is that a new programming language reference home slice?" :lolbron:
 

TrebleMan

Superstar
Joined
Jul 29, 2015
Messages
5,592
Reputation
1,180
Daps
17,541
Reppin
Los Angeles
Elixir/Phoenix is a cool language/framework combination, but not really feeling the whole "magic" the language brings. Although I'm not deep into the metaprogramming aspect of it yet and think the concept of Elixir being developed in Elixir is definitely cool, I'm not really feeling the syntax. I'm almost done writing a web MVC API for it with sockets/channels also, but it wasn't as seamless as I was hoping. I think I'm the type who likes to follow convention in languages though.

My main complaint: It's very annoying trying to figure out where some macros/functions are being called from and what they do. If you import a module that imports another module, you could call the functions inside that module without dot notation. I'm having some difficulty after running a mix task to get a scaffold for a web app and seeing a ton of functions already in the code that don't specify which of the many modules it came from. Meaning tracking each of them down to see what those functions/macros are doing is genuinely fatiguing, especially considering there's a ton of them. Then you throw in that it's not very focused on being purely idiomatic and the varied ways to code make it seem a little too open-ended making other people's code a little tougher to read, for me at least.

All personal opinions, ymmv. Going to put this one down early as soon as I'm finished with this app. I'll hit Haskell for some functional programming. Even though I know a lot of people complain about the difficulty of it, but at least it doesn't shortcut anything and looks to be more explicit.
 
Last edited:
Joined
Jan 30, 2016
Messages
1,645
Reputation
150
Daps
3,069
Elixir/Phoenix is a cool language/framework combination, but not really feeling the whole "magic" the language brings. Although I'm not deep into the metaprogramming aspect of it yet and think the concept of Elixir being developed in Elixir is definitely cool, I'm not really feeling the syntax. I'm almost done writing a web MVC API for it with sockets/channels also, but it wasn't as seamless as I was hoping. I think I'm the type who likes to follow convention in languages though.

My main complaint: It's very annoying trying to figure out where some macros/functions are being called from and what they do. If you import a module that imports another module, you could call the functions inside that module without dot notation. I'm having some difficulty after running a mix task to get a scaffold for a web app and seeing a ton of functions already in the code that don't specify which of the many modules it came from. Meaning tracking each of them down to see what those functions/macros are doing is genuinely fatiguing, especially considering there's a ton of them. Then you throw in that it's not very focused on being purely idiomatic and the varied ways to code make it seem a little too open-ended making other people's code a little tougher to read, for me at least.

All personal opinions, ymmv. Going to put this one down early as soon as I'm finished with this app. I'll hit Haskell for some functional programming. Even though I know a lot of people complain about the difficulty of it, but at least it doesn't shortcut anything and looks to be more explicit.

nice! thanks for sharing your perspective. i've been on some analysis paralysis when it comes to trying out a functional language. i feel like i'd rather hit haskell first, have it kick my butt a couple times so that by the time i go to scala, clojure, elixir etc, i'd have an idealized understanding of the functional paradigm which will allow me to evaluate each language's strong and weak points.

thing with haskell is it doesn't seem very practical for any of the little projects i do day to day. so dedicating time to it would just be mental masturbation :noah: .... that's why i've been procrastinating hardcore :sadcam::sadcam:
 

TrebleMan

Superstar
Joined
Jul 29, 2015
Messages
5,592
Reputation
1,180
Daps
17,541
Reppin
Los Angeles
nice! thanks for sharing your perspective. i've been on some analysis paralysis when it comes to trying out a functional language. i feel like i'd rather hit haskell first, have it kick my butt a couple times so that by the time i go to scala, clojure, elixir etc, i'd have an idealized understanding of the functional paradigm which will allow me to evaluate each language's strong and weak points.

thing with haskell is it doesn't seem very practical for any of the little projects i do day to day. so dedicating time to it would just be mental masturbation :noah: .... that's why i've been procrastinating hardcore :sadcam::sadcam:

Completely understand. It's like you have to understand Haskell first before you start making Haskell applications, whereas other languages it's like you can learn the language while building something. I'm mainly using Haskell to build some habits and learn how to think about programming from a functional perspective. All of that may mean I'll be using a different language to build with the concepts I've picked up from Haskell. I think that's one of it's main selling points.

I think you can learn Elixir/Phoenix while building with web apps and learn functional programming during the whole process through Elixir though. My issue was there wasn't as much emphasis on FP as there was learning some of the side technology the Phoenix framework uses (Ecto and Plug). The resources I used to learn it only mentioned it from time to time ("see no side effects. That's the value of functional programming.") whereas I wanted a more thorough explanation of why it's coded that way.

In terms of your anxiety, here's what encouraged me. Mainly saying after a few months of getting into it, you can be at a very self-sufficient and effective level:
https://www.quora.com/How-long-does-it-take-to-learn-Haskell
 
Last edited:

kevm3

follower of Jesus
Supporter
Joined
May 2, 2012
Messages
16,291
Reputation
5,551
Daps
83,483
I think I'm going to hold off from jumping into any side languages. My focus right now is on increasing my C# and JS skills and I'm working through a book on making games. Functional programming is definitely interesting, and I'll probably pick up something like Elm down the line.
 
Top