|
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. |
On August 19 2013 17:43 Birdie wrote:Show nested quote + A degree from a good school will also provide you with a huge time-efficient boost so you can learn a lot really really fast University isn't time efficient at all, it's a really slow way of learning.
It's hugely depending on what you do in your spare time, what people you meet and stay in touch with. A carreer could directly launch from there. Talking to other students with the same major but different fields of interest also broadens your horizon - something you may not get when you teach yourself a specific language and directly start working in a specific field of business.
edit: 2pages back
On August 15 2013 09:15 berated- wrote:Show nested quote +On August 15 2013 06:35 one-one-one wrote: I must warn you. If you want this to work well you might need a lot of patience before you get things to work the right way. My recommendation is to do away with Eclipse and forget about full IDE integration. In my experience it works better if you just let Maven work on its own. You'll have to spend a little more energy on setting up a comfortable programming environment and learning another IDE than Eclipse.
Eclipse is slow, buggy and never holds up to what it promises to do. It represents everything that is bad with JAVA.
What? ... the java hate is just so overdone. I don't think that you necessarily need to setup your project to be maven only, sure it would eliminate the issue because well... you wouldn't even be running the tests with the testng plugin. But regardless of what people try to say, eclipse is a great ide and works well when you understand what its trying to do. The reason that you are experiencing the issues is because of the differences of maven and eclipse. Maven is a full build tool, but eclipse tries to circumvent some of the lifecycles and use their own compilation methods. [...]
I had to work with Eclipse when i started college, starting it up was a huge pain but it was "ok" to work with as far as i remember. But now I met emacs and I'll never ever step away from it again. Even though I had to set up a java project with it from scratch, its able to get everything done with this free, small, fast and customizable piece of awesomeness <3
|
On August 19 2013 17:43 Birdie wrote:Show nested quote + A degree from a good school will also provide you with a huge time-efficient boost so you can learn a lot really really fast University isn't time efficient at all, it's a really slow way of learning. I agree, at least for CS at my uni. Things often aren't done in-depth enough to teach you actually useful things, but they are done in too much detail to be efficient as overviews. The middle road isn't the best one in this case.
You are forced to learn a lot of things that have a very low chance of actually being useful even once before you completely forget about it in a couple years just to get good grades or even just any grades at all.
It still is a big help for getting a job. But I sure don't like this system.
|
On August 19 2013 14:11 enigmaticcam wrote:Bill Gates and Steve Jobs were more than just programmers. They were visionaries with good business and leadership skills. On an unrelated note, I've got a question on image recognition software. I've got a friend of mine I do iOS freelance for, and he's looking for some help with one of his apps. He wants to design an app that can, among other things, take a picture of a wine bottle and determine what brand/vintage/varietal the bottle is straight from the image. The image will get sent to a server where it will be processed. Obviously there will be a lot involved, but the basic idea he needs help with is this: if I take an image of a wine bottle, it's likely the system won't be able to determine what it is the first time. But the system will catalog it and save it for later use. If someone else takes a similar photo of the same wine, shouldn't there be an image algorithm that can tell me there's a high chance the wine is the same in both images? I know nothing about image recognition algorithms or how they work. Anyone know where I can start? I know there's http://opencv.org/ but there's a lot to be found there and I'm not entirely sure of what I'm looking for. Any help would be appreciated.
GL with that.
What you are essentially doing is automated meta-data generation from OCR. Which, in my humble opinion, is like the holy grail of information in the 21st century. Google has been working on this for years for their google books project, and is still terrible at it.
I don't know a whole lot about wine, but I imagine all the pertinent information (brand, vintage, etc.) is on different places on the label (at least from what I've seen) depending on the company. Maybe there are just a few variants that you could code for, but I doubt it. If you pull this off, reliably, maybe try working on books and make your millions by selling it to google.
|
Well, it's not unlikely that you can gather at least some information from image matching as I assume that the different brands use different labels. Image matching alone probably is not enough though. But if you can identify a certain type of label or bottle shape, you might be able to specify locations of certain pieces of information making it easier to match the data.
The metadata for wine bottles isn't nearly as complex as for books. You know what you are looking for. You don't even have to worry about human language troubles as you only look for single words.
|
On August 20 2013 01:13 HardlyNever wrote:What you are essentially doing is automated meta-data generation from OCR. Which, in my humble opinion, is like the holy grail of information in the 21st century. Google has been working on this for years for their google books project, and is still terrible at it. lol this is exactly what I thought too when he asked me about it.
What if I said we already had a valid list of brands, vintages, and varietals? If a good image was taken of the label, would it be possible to do character recognition to match the words on the label from the image with the valid list?
|
On August 20 2013 01:49 enigmaticcam wrote:Show nested quote +On August 20 2013 01:13 HardlyNever wrote:What you are essentially doing is automated meta-data generation from OCR. Which, in my humble opinion, is like the holy grail of information in the 21st century. Google has been working on this for years for their google books project, and is still terrible at it. lol this is exactly what I thought too when he asked me about it. What if I said we already had a valid list of brands, vintages, and varietals? If a good image was taken of the label, would it be possible to do character recognition to match the words on the label from the image with the valid list?
Before I give my answer, I want to make the disclaimer that I am a librarian and web developer. I don't program OCR; I've only used it on the user end (for scanning books and using OCR on the text, then fixing up the mistakes and often marking it up in TEI). So what I know about OCR is strictly from the user end, while having a some programming knowledge of different languages, and having a rough estimate of how it works on the back end. Someone else might have more experience programming OCR directly.
Say you have a set of brands (lets say 3, just for example) where the brand name, vintage, varietals etc. are all on the same place on the label for each individual brand. So for brand A that information is in a predictable coordinate location, brand B that information is in a separate but equally predictable set of coordinates, and brand C the same is true. You might be able to make a program for each brand, and run your program knowing which brand it is ahead of time. Making a program that can read the brand label outright, find the rest of the relevant information correctly, without the user telling it which one it is, will be a lot more difficult.
The real problem with OCR is telling the machine what it is really looking at. It can read printed words pretty well, but what those words actually are (brand name, year, etc.) are a lot harder to program a machine to get right unless they are in very predictable places each time. This will be further complicated for you by a few factors:
1. A lot of wine brands (that I know of, at least) use bizarre fonts/styling for their actual brand label, so if you have the machine expect things by brand (i.e. it is brand A so the vintage should be here), and it can't even read the brand right, because they used some funky font that conks out you OCR, well, then you're kind of screwed as far as automation goes.
2. User error. Again, the machine will expect certain things to be in certain spots in relation to one another. While you can have some leeway here, if people are taking pictures from all sorts of funny angles, your OCR will be able to read the words, but not know what is what. You'll have to be pretty strict on what is an acceptable camera shot.
Hope that helps. Sounds like something I wouldn't mind working on for fun, if I had the time (which I don't really).
|
I hate it when people bash universities just because they're close minded.
The field of CS is way, way, way bigger than your shitty web site designing or OOP which most of you nowadays do. When you're studying CS, Bachelors provides you with basics of the field.
IT IS UP TO YOU HOW YOU WANT TO SPECIALISE!
Masters provides you the scientific depth behind the field you took and Doctorate degree gives you the deepest insight an education can give you into the field. Your success depends on your work afterwards.
So stop being so close minded and thinking that uni didn't make you a good designer or a good OOP programmer, it's not meant teach you that. You learn that by actually doing it.
|
On August 20 2013 04:35 Abominous wrote: I hate it when people bash universities just because they're close minded.
The field of CS is way, way, way bigger than your shitty web site designing or OOP which most of you nowadays do. When you're studying CS, Bachelors provides you with basics of the field.
IT IS UP TO YOU HOW YOU WANT TO SPECIALISE!
Masters provides you the scientific depth behind the field you took and Doctorate degree gives you the deepest insight an education can give you into the field. Your success depends on your work afterwards.
So stop being so close minded and thinking that uni didn't make you a good designer or a good OOP programmer, it's not meant teach you that. You learn that by actually doing it. Ok, let me clarify. I don't think uni is bad if you're going to stay on the academics train for a longer time. But if you plan to pick up a job as a programmer, where a Bachelor's degree in CS is often required to get a job interview, then a lot of the things you do at uni really only serve for the purpose of getting a job interview. Not all of it, but the relevant things could easily be packed into a much shorter time span.
That's why I hate the system. You have to get a degree that doesn't even say anything about your qualification as a programmer (unless you are one of the few people who can draw attention to them otherwise) and waste a lot of time that could be better spent on improving your relevant skills.
That being said, at least at my uni there are plenty of courses that really could be given a clearer and more refined concept even if we are looking at it from the academics side.
|
On August 15 2013 16:20 KurtistheTurtle wrote:It's sitting on my desk right now! First I want to get through the rest of one of my intro to java books so I get some guided gui and networking practice in, then I'm gonna hop around in Code Complete. Maybe by then I'll be able to understand what effective java is actually saying :p Since you recommended effective java, I'll definitely go with your recommendation on this one too. Thanks! Just FYI, this growing TDD book is fantastic. I've gone through a ruby on rails app using cucumber in a class, and seen some presentations on gradle, but neither of those give the insight or conceptual backdrop on how completely TDD has changed the nature of programming and why it's a good thing.
This leads to my next poorly phrased question for all the java guys out there: I'm leaning towards the gradle addon for intelliJ idea, or does junit have end-to-end testing functionality? Any recommendations on what's best?
|
On August 20 2013 04:57 spinesheath wrote:Show nested quote +On August 20 2013 04:35 Abominous wrote: I hate it when people bash universities just because they're close minded.
The field of CS is way, way, way bigger than your shitty web site designing or OOP which most of you nowadays do. When you're studying CS, Bachelors provides you with basics of the field.
IT IS UP TO YOU HOW YOU WANT TO SPECIALISE!
Masters provides you the scientific depth behind the field you took and Doctorate degree gives you the deepest insight an education can give you into the field. Your success depends on your work afterwards.
So stop being so close minded and thinking that uni didn't make you a good designer or a good OOP programmer, it's not meant teach you that. You learn that by actually doing it. Ok, let me clarify. I don't think uni is bad if you're going to stay on the academics train for a longer time. But if you plan to pick up a job as a programmer, where a Bachelor's degree in CS is often required to get a job interview, then a lot of the things you do at uni really only serve for the purpose of getting a job interview. Not all of it, but the relevant things could easily be packed into a much shorter time span. That's why I hate the system. You have to get a degree that doesn't even say anything about your qualification as a programmer (unless you are one of the few people who can draw attention to them otherwise) and waste a lot of time that could be better spent on improving your relevant skills. That being said, at least at my uni there are plenty of courses that really could be given a clearer and more refined concept even if we are looking at it from the academics side. Surely, many courses in the not-so-top-notch unis could use revising. But the managers need something on paper, some sort of education past high school and the problem is there are rarely globally accepted certificates which you could use as a testament for your skills.
So that part is indeed fucked up. But if you don't plan on staying in Academia, get the bachelors degree with a good GPA and spend your free time programming various stuff, start projects and similar, they don't have to be large and funded and stuff like that, just something that might show on your CV and help with your interview.
|
On August 20 2013 04:57 spinesheath wrote:Show nested quote +On August 20 2013 04:35 Abominous wrote: I hate it when people bash universities just because they're close minded.
The field of CS is way, way, way bigger than your shitty web site designing or OOP which most of you nowadays do. When you're studying CS, Bachelors provides you with basics of the field.
IT IS UP TO YOU HOW YOU WANT TO SPECIALISE!
Masters provides you the scientific depth behind the field you took and Doctorate degree gives you the deepest insight an education can give you into the field. Your success depends on your work afterwards.
So stop being so close minded and thinking that uni didn't make you a good designer or a good OOP programmer, it's not meant teach you that. You learn that by actually doing it. Ok, let me clarify. I don't think uni is bad if you're going to stay on the academics train for a longer time. But if you plan to pick up a job as a programmer, where a Bachelor's degree in CS is often required to get a job interview, then a lot of the things you do at uni really only serve for the purpose of getting a job interview. Not all of it, but the relevant things could easily be packed into a much shorter time span. That's why I hate the system. You have to get a degree that doesn't even say anything about your qualification as a programmer (unless you are one of the few people who can draw attention to them otherwise) and waste a lot of time that could be better spent on improving your relevant skills. That being said, at least at my uni there are plenty of courses that really could be given a clearer and more refined concept even if we are looking at it from the academics side.
I have to disagree, it depends on what branch on informatics you study, but the things you learn are quite usefull. Software engineering and development is more then just programming. Programming is a part of it, as are working in projects, leading projects, requirement analysis, and lots of more stuff, I dont want to go into detail. One of my teachers explained software engineering this way: Of course you can write great programs or code without studying software engineering but thats not really the point of software engineering. Software engineering is more like hygiene, of course if you don't wash your hands or shower every day you wont go instantly sick or maybe someone who never showers will never go sick. But in general following hygiene standards that have been established will prolonge your life, the same is true with following software engineering standards and projects.
I have seen many programmers without a university degree but I am generally disappointed in them. They dont know what software patterns are. They dont segregate the model from the UI, their coding style resembles spghetti and although they may get their work done, if anyone else has to touch this code, well he/she is in for a ride ...
I think a bachelors degree is great for every programmer, masters is more important in a leading or management position and a doctor, well thats more if you want to go into academics or research.
|
I took a seminar on Software quality recently. It was rather good. The content was provided by students to a large extent, and the hosts were active both in academics and in their own software quality related companies. If I compare that to the course on Software Engineering I had to take a while ago, I'm getting really sad. All the relevant content of the course could be learnt by reading some wikipedia pages for 10 minutes.
I've seen code written by people with university degrees in CS that is awful. I've also seen code by people without university degrees that is awful. Having a degree or not does not say anything about your programming skill. There was a time when my programming was much worse than it is now. But I certainly didn't improve through university. My interest in ways to improve my own code was sparkled by findings on the internet.
|
Hey guys,
Been tasked with figuring out the best way to implement our help files, currently we use compiled html (chm) but we want to move to a web style set up both for online and local help files.
Basically just a bunch of js / html etc files in folders locally.
Now the thing I need to figure out is how we can implement some kind of search. The first suggestion was to just open up each html file and parse them when you search for a keyword but this sounds pretty crude to me, not only do you fail with any kind of typo but it's won't scale well.
Are there any search libraries that might do something similar to this? Obviously there's word highlighting which can be done in js but I'm talking more searching through files etc
The way I would've thought it should be done is with some kind of keyword database, but again this is totally foreign territory for me as I don't really know how that would be implemented at the minute.
Given that rather poor quality explanation can anybody briefly outline what pros and cons I would face with different implementations and a rough outline of how you would best go about this?
|
Hyrule19062 Posts
|
On August 20 2013 23:27 adwodon wrote: Hey guys,
Been tasked with figuring out the best way to implement our help files, currently we use compiled html (chm) but we want to move to a web style set up both for online and local help files.
Basically just a bunch of js / html etc files in folders locally.
Now the thing I need to figure out is how we can implement some kind of search. The first suggestion was to just open up each html file and parse them when you search for a keyword but this sounds pretty crude to me, not only do you fail with any kind of typo but it's won't scale well.
Are there any search libraries that might do something similar to this? Obviously there's word highlighting which can be done in js but I'm talking more searching through files etc
The way I would've thought it should be done is with some kind of keyword database, but again this is totally foreign territory for me as I don't really know how that would be implemented at the minute.
Given that rather poor quality explanation can anybody briefly outline what pros and cons I would face with different implementations and a rough outline of how you would best go about this?
You can maybe try Solr or build your own reverse-index search engine.
|
Learning CS at a University is good for teaching you the underlying fundamentals of what's happening with a computer that you would probably never learn on your own. However this doesn't necessarily make you a good programmer as they are two different skill sets.
I've worked in the industry for 3+ years now after graduating, and I can tell you 90% of the things you learned in college you'll never use writing production software. But it's that 10% that really gives you deep insight on what you're doing when writing code.
There are bad coders with or without degrees, there are good coders with or without degrees. But if I were deciding between two candidates who were equally close I would always go with the person with the CS degree hands down.
|
On August 20 2013 23:27 adwodon wrote: Hey guys,
Been tasked with figuring out the best way to implement our help files, currently we use compiled html (chm) but we want to move to a web style set up both for online and local help files.
Basically just a bunch of js / html etc files in folders locally.
Now the thing I need to figure out is how we can implement some kind of search. The first suggestion was to just open up each html file and parse them when you search for a keyword but this sounds pretty crude to me, not only do you fail with any kind of typo but it's won't scale well.
Are there any search libraries that might do something similar to this? Obviously there's word highlighting which can be done in js but I'm talking more searching through files etc
The way I would've thought it should be done is with some kind of keyword database, but again this is totally foreign territory for me as I don't really know how that would be implemented at the minute.
Given that rather poor quality explanation can anybody briefly outline what pros and cons I would face with different implementations and a rough outline of how you would best go about this?
This question is worded really strangely. So you have a bunch of html/js files in a folder. I presume since these are help files, the "local" folder is going to get mapped to some web server, right?
How will people be searching through the help then? Are you going to create a "search" page where people will submit a form that does the searching for them?
This honestly sounds like a job for grep, sed, and perl. If you don't know what grep is, it's basically a really versatile tool that's used in Unix for all sorts of searching. You can search recursively through folders, tell it what to return on a hit, and you can even search using regular expressions. You can combine perl and grep. Perl can run on the back end (acting like PHP) and call grep for you. You can use SED to strip the HTML tags off the files for faster searching, and use Perl's mechanize on HTML and get just the text.
Not sure if this helps at all, but you question leaves out a lot of information.
|
On August 20 2013 05:02 KurtistheTurtle wrote:Show nested quote +On August 15 2013 16:20 KurtistheTurtle wrote:It's sitting on my desk right now! First I want to get through the rest of one of my intro to java books so I get some guided gui and networking practice in, then I'm gonna hop around in Code Complete. Maybe by then I'll be able to understand what effective java is actually saying :p Since you recommended effective java, I'll definitely go with your recommendation on this one too. Thanks! Just FYI, this growing TDD book is fantastic. I've gone through a ruby on rails app using cucumber in a class, and seen some presentations on gradle, but neither of those give the insight or conceptual backdrop on how completely TDD has changed the nature of programming and why it's a good thing. This leads to my next poorly phrased question for all the java guys out there: I'm leaning towards the gradle addon for intelliJ idea, or does junit have end-to-end testing functionality? Any recommendations on what's best? T.T
self-followup in case somebody else wants to know the answers: stackoverflow
|
On August 21 2013 13:29 Birdie wrote: StarServer needs a web developer! Hey guys, one of the things that's currently slowing down the server's progress is our lack of a dedicated web developer with experience and time. Basically we need someone with PHP and SQL experience who can code a forum and tournament and clan system. You'd need to be comfortable using MVC, and have enough time and experience to be able to dedicate several hours a week to the site.
PM me if you think you're up for it!
just sharing this in case somebody is interested 
Link: http://www.teamliquid.net/forum/viewmessage.php?topic_id=413802¤tpage=39#768
User was warned for this post
|
Hyrule19062 Posts
|
|
|
|