15,891,136 members
Sign in
Sign in
Email
Password
Forgot your password?
Sign in with
home
articles
Browse Topics
>
Latest Articles
Top Articles
Posting/Update Guidelines
Article Help Forum
Submit an article or tip
Import GitHub Project
Import your Blog
quick answers
Q&A
Ask a Question
View Unanswered Questions
View All Questions
View C# questions
View C++ questions
View Javascript questions
View Visual Basic questions
View Python questions
discussions
forums
CodeProject.AI Server
All Message Boards...
Application Lifecycle
>
Running a Business
Sales / Marketing
Collaboration / Beta Testing
Work Issues
Design and Architecture
Artificial Intelligence
ASP.NET
JavaScript
Internet of Things
C / C++ / MFC
>
ATL / WTL / STL
Managed C++/CLI
C#
Free Tools
Objective-C and Swift
Database
Hardware & Devices
>
System Admin
Hosting and Servers
Java
Linux Programming
Python
.NET (Core and Framework)
Android
iOS
Mobile
WPF
Visual Basic
Web Development
Site Bugs / Suggestions
Spam and Abuse Watch
features
features
Competitions
News
The Insider Newsletter
The Daily Build Newsletter
Newsletter archive
Surveys
CodeProject Stuff
community
lounge
Who's Who
Most Valuable Professionals
The Lounge
The CodeProject Blog
Where I Am: Member Photos
The Insider News
The Weird & The Wonderful
help
?
What is 'CodeProject'?
General FAQ
Ask a Question
Bugs and Suggestions
Article Help Forum
About Us
Search within:
Articles
Quick Answers
Messages
Comments by Empiric (Top 3 by date)
Empiric
27-Sep-13 15:55pm
View
Reason for my vote of 2 \n Even though you solved the problem you set out to solve (genuinely pleased to see this, and well-done on your use of IDataReader), my opinion is that you are trying to push a square peg through a round hole. If you want to store large data in a way that is portable, don't use an excel file format, use a proper serialization format such as CSV or XML or JSON, or (for something with a smaller footprint but lower portability) binary serialization, or for something more exotic, try protocol buffers. If you want it human-readable, use CSV or XML. Excel is poorly suited to storing or analyzing large data sets. For analyzing them, use databases. For storing them, use databases or one of the serialization formats above. To allow them to be portable between systems or organizations, use a portable serialization format. If your data is gigantic, then consider use a more efficient/compressed format.
Empiric
13-Sep-13 18:23pm
View
Reason for my vote of 3 \n You are abstracting away recursion... this will result in stack overflow under certain conditions. Recursion is an intellectually appealing way to solve problems, but I rarely rely on it over enumeration, stream processing, event processing, reactive programming, etc. I also would think twice about over-engineering functions like addition and multiplication.
Also, your "aggregateMethodN" functions should have more specific names. ;)
But still a neat article.
Empiric
13-Sep-13 17:55pm
View
Reason for my vote of 3 \n You are abstracting away recursion... this will result in stack overflow under certain conditions. Recursion is an intellectually appealing way to solve problems, but I rarely rely on it over enumeration, stream processing, event processing, reactive programming, etc. I also would think twice about over-engineering functions like addition and multiplication.
Also, your "aggregateMethodN" functions should have more specific names. ;)
But still a neat article that points out how to use functional programming in C#.