• 0

Have a project in mind, no language to pursue


Question

I want to write a program that I would upload an excel file into and analyze the data. I don't know any languages professionally but willing to learn. (Most advised to have a project in mind if I want to learn a new language). Which language would be more suitable, python or C#?

 

Where do I begin?

Link to comment
Share on other sites

23 answers to this question

Recommended Posts

  • 0

Where to begin with such a thing? Writing code to parse an excel file format from scratch might turn out to be a huge pain, particularly for the older closed-design formats which require(d) reverse engineering, perhaps a lot less so for the newer xml based ones. From a productivity based point of view, I'd advise against such an undertaking at all costs unless you really have to - why put so much effort into such an undertaking if there are much easier/better options. One alternative is to go search to see if there's already an existing library for reading/writing excel files which you could integrate into your application. Another would be to consider whether you could simply export data from the excel file, perhaps witht he save as funciton, or maybe macros, into a more easily readable format such as csv, which your application could then parse.

 

I get you want to do this as a learning exercise, but you may well find that you need to spend forever just simply trying to understand the excel file format, before even getting to write any code to parse it, and parsing it may not be as easy as you expect, it may turn out to be a very messy complex format. Doesn't sound like a very fun project to try and tackle to me :/

 

If you want to try something similar that might be a little easier/nicer/funner, consider creating a little simple text-based database file or config-setting type file which you could then write a program to parse.

Link to comment
Share on other sites

  • 0

No reason to reverse engineer anything, you have multiple options in dotNET for dealing with Office documents, Excel included.  Python also has a few libraries available in PyPI for Excel too.  Really boils down to which language you'd be more comfortable with. There's a rather lengthy thread here somewhere about C# vs Python vs The World for beginners too.. both run well under Windows so you have your options.  Me, if I knew then what I know now and was only pursuing this as a hobbyist I'd probably go with Python, it's really simple to pick up.  For more long-term (or if you wanted to go heavy on GUI stuff) I'd pick C#.  But that's just me... no wrong answer here.

Link to comment
Share on other sites

  • 0

You don't know any languages, like at all?

 

Python.

 

I highly recommend looking into libraries in Python designed to do this. First you're going to have to learn the fundamentals of Python and have a strong grasp of object oriented code (most any library you use will be written for that paradigm).

 

Personally, I regard C# as the better language but Python is certainly easier to get into and it's still very powerful.

 

Good luck.

Link to comment
Share on other sites

  • 0

I've taken an introductory course in java and sql. Build my own website (6 years back :p) in asp.net. Played with html, css, and some php. I've got a mix of exposure, but haven't dived deep into one. Now it's the time to narrow down and focus!

 

I'm more inclined to use c# (industry standard?) but I'm open to your expert opinion, guys.

Link to comment
Share on other sites

  • 0

I've taken an introductory course in java and sql. Build my own website (6 years back :p) in asp.net. Played with html, css, and some php. I've got a mix of exposure, but haven't dived deep into one. Now it's the time to narrow down and focus!

 

I'm more inclined to use c# (industry standard?) but I'm open to your expert opinion, guys.

 

 

Considering your exposure to Java, asp.net and PHP and your overall inclination to go with C#. I've changed my answer to 'Go with C#'.

 

 

As for 'industry standard', considering how highly debatable that is, I'll just say that the industry standard is not having an industry standard. Programming languages are just tools. Much like you can Hammer a Screw into a wall, I'd advise you use a screwdriver or a power drill. Knowing which tool to use in each situation is the industry standard.

  • Like 1
Link to comment
Share on other sites

  • 0

There are perl and python libraries available, but as a novice-programmer, you probably won't know what to do with them straight out of the box.

If the excel files are not too complicated, you could just convert them to a csv format and write a simple program to manipulate the data that way.

Link to comment
Share on other sites

  • 0

Thanks all. Basically, my framework is like this: read excel file --> extract data --> output (in form of graphs/numbers).

 

Any video tutorials out there? Youtube has some great java tuts, but crappy C# ones.

Link to comment
Share on other sites

  • 0

Thanks all. Basically, my framework is like this: read excel file --> extract data --> output (in form of graphs/numbers).

 

Any video tutorials out there? Youtube has some great java tuts, but crappy C# ones.

 

https://buckysroom.org/videos.php?cat=15

 

200 Videos, a lot are useful. On top of that I also highly recommend the C# Yellow Book as I've just finished reading it and it's great.

Link to comment
Share on other sites

  • 0

Great resources. However, after playing around, I think I need to start over, learn the basics, syntax, etc. I want to get a book now, which would be a good starters (other than they yellow book)?

 

Like: http://www.amazon.ca/Microsoft-Visual-2013-Step/dp/073568183X/ref=tmm_pap_title_0?ie=UTF8&qid=1403300579&sr=1-1

Link to comment
Share on other sites

  • 0

Great resources. However, after playing around, I think I need to start over, learn the basics, syntax, etc. I want to get a book now, which would be a good starters (other than they yellow book)?

The C# Yellow Book is the best introduction to programming and C# you can get. If you want something printed on paper, there's no stopping you from getting the pdf printed and binded somewhere. ;)

 

That Microsoft book looks pretty good too though, if perhaps boring.

  • Like 2
Link to comment
Share on other sites

  • 0

The C# Yellow Book is the best introduction to programming and C# you can get. If you want something printed on paper, there's no stopping you from getting the pdf printed and binded somewhere. ;)

 

That Microsoft book looks pretty good too though, if perhaps boring.

Aren't all programming books boring?

Link to comment
Share on other sites

  • 0

Base Class Library books are kinda boring because they're just reference manuals. I've never seen the Yellow Book but there used to be a C# Little Black Book that was fairly light and amusing.

Link to comment
Share on other sites

  • 0
  • 0
  • 0

I'd probably purchase "Head First" as I've used their series before for PHP and I remember it was pretty good.

That what I thought at first, from the looks of it, pages and content >> more beginner-friendly. However, reading reviews on that particular C# book got lots of criticism, not because of the graphics and jokes, but more of them focusing on Windows store apps and "silly" games from the get-go. Also, the author shows how to use VS 2012, where if you have VS 2013 you'd run into trouble. So to remedy that, download a pdf from their website with update info on select chapters. Which is a hassle because you have to go back and forth between the book and the pdf. :/

Link to comment
Share on other sites

  • 0

That what I thought at first, from the looks of it, pages and content >> more beginner-friendly. However, reading reviews on that particular C# book got lots of criticism, not because of the graphics and jokes, but more of them focusing on Windows store apps and "silly" games from the get-go. Also, the author shows how to use VS 2012, where if you have VS 2013 you'd run into trouble. So to remedy that, download a pdf from their website with update info on select chapters. Which is a hassle because you have to go back and forth between the book and the pdf. :/

 

Eek. Well good job on better researching the books. I was just going purely on past experience with the "Head First" series. Personally I'm using VS2012 so that'd be perfectly fine, but I have no interest in Windows Store apps or games either.

 

I think if you get through Yellow Book you'll have a better idea of what areas you need to work on and can buy a book according to those needs. I can almost guarantee you will need a second, third or maybe even a fourth book so don't get too discouraged if the book you buy isn't the perfect book; there is a good chance you'll need to buy another later on and by that time you'll know which book you need (it might not even be C#).

Link to comment
Share on other sites

  • 0

Eek. Well good job on better researching the books. I was just going purely on past experience with the "Head First" series. Personally I'm using VS2012 so that'd be perfectly fine, but I have no interest in Windows Store apps or games either.

 

I think if you get through Yellow Book you'll have a better idea of what areas you need to work on and can buy a book according to those needs. I can almost guarantee you will need a second, third or maybe even a fourth book so don't get too discouraged if the book you buy isn't the perfect book; there is a good chance you'll need to buy another later on and by that time you'll know which book you need (it might not even be C#).

Yeah, I'm currently reading the Yellow Book and it's quite interesting. After research, and I don't want to do anymore, I'll buy the C# 2013 Step by Step by Microsoft. 

Link to comment
Share on other sites

  • 0

I want to write a program that I would upload an excel file into and analyze the data. I don't know any languages professionally but willing to learn. (Most advised to have a project in mind if I want to learn a new language). Which language would be more suitable, python or C#?

 

Where do I begin?

It would be much easier to analyze CSV data (which Excel can produce - see rfirth's post above) than an Excel file. Just about any modern programming language would suit, however I'd recommend C++ or C#.

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.