Mites kauan VB.NETillä menis tän koodaukseen?
http://www.jakoon.fi/w/25020964842
Osaisko Jepulis Jeep auttaa, kun ainakin kehuu että visual studiota niin kovasti? Vai oisko se helpompi tehdä C#'llä?
http://www.jakoon.fi/w/25020964842
Osaisko Jepulis Jeep auttaa, kun ainakin kehuu että visual studiota niin kovasti? Vai oisko se helpompi tehdä C#'llä?
Vastaukset 37
Vanhimmat
Kyllä Visual Studio noin helpot ongelmat ratkoo, vähän vaan OK-nappia näpyttää. Ihan totta.
Eipä tossa tekemisessä oo varmaan sinänsä pahemmin eroa sillä, teekkö sen VB.NET:llä vai C#:lla kun kielet ovat niin äärimmäisen lähellä toisiaan. Pikku eroja syntaksissa.
Sun kannattaa varmaan lähtee siitä, että ymmärrät tosta logiikan ja siitä sitten vasta liikkeelle. Sinänsä .NET on varmaan ihan ok valinta jos tykkäät toimivista käyttöliittymistä.
C#:lla tietenkin jos noista pitää valita kun se on standardoitu nykyaikainen kieli eikä mikään muinaishistorian jäänne mitä on tekohengitetty nykypäivään.
Kyllä mäkin C#:n valitsisin jos voisi noista valkkailla vapaasti. Hieno kieli ja hyvät työkalut.
Mutta jos tota nykysta VB.NET:iä sanot muinaishistoriaksi, niin oot kyllä vähän hakoteillä. Vai osaatkos sanoa niitä eroja joita noissa kahessa on ihan käytännön tekemisen kannalta koodaustasolla jos nyt unohdetaan se standardointipuoli edes tämän kerran?
Ootko oikeesti koskaan koodannut vaikka just tolla VB.NET 2008:lla enempää kun hello wörldiä?
Koodaisitko tollasen? Multa ei onnistu. Voisin maksaa hyvin jos se toimis? C#'llä ois ok.
"Vai osaatkos sanoa niitä eroja joita noissa kahessa on ihan käytännön tekemisen kannalta koodaustasolla jos nyt unohdetaan se standardointipuoli edes tämän kerran?"
En pudu koodaustasosta vaan ohjelman ylläpidosta kannalta. Sehän nyt on muutenkin 80% kaikesta. VB on kuoleva kieli, älkää nyt helvetissä sillä tehkö mitään.
Mitäs sun mielestäs on hyvin?
Linukkaporukka ois onnesta soikeena jos pääsis joskus ees samalle tasolle käyttäjämäärissä kun noi sun mielestäs kuolevat systeemit.
En ole sellaista kyllä sanonut eikä se kyllä ainakaan kymmeneen vuoteen ole mihinkään katoamassa. Hitaasti hiippuva käyttis se kuitenkin on. Sehän on väistämätöntä tietotekniikka sulautuu joka paikkaan ja perinteiset pönttö PC:t menettävät merkitystään.
"Linukkaporukka ois onnesta soikeena jos pääsis joskus ees samalle tasolle käyttäjämäärissä kun noi sun mielestäs kuolevat systeemit."
Melkein joka talosta löytyy yksi tai useampi Linux joten eipä ole sen suhteen mitään ongelmaa.
Heh hee. Ei kai kyse ole tästä:
http://www.youtube.com/watch?v=KofosWccOBg
Mistäs sulle semmonen tuli mieleen?
Siitä että ongelma sen verran hankala että kaikki ammattilaiskoodarina itseään pitävät eivät sitä omatoimisesti ratkaise.
Uskomisen lopettamiseksi, *todista* eli näytä tehtävämäärittelyn mukainen ratkaisu.
Muuten pitäisikö uskoa tyyppiin joka kirjoittaa 'empä' (klassinen virhe).
Niin, yritätkös palkata minua tekemään jotain vai mitäs ajat takaa?
Melkeen joka talosta Linukka kun hyvä jos joka talossa on nykysin ees tietokonetta.
"Melkeen joka talosta Linukka kun hyvä jos joka talossa on nykysin ees tietokonetta."
Nykypäivänä ei ole talossa vain yhtä tietokonetta vaan sellainen on usein joka perheenjäsenellä. Ja vaikka ei tietokonetta olisikaan niin digipoksi löytyy melkein joka paikasta. Tietokoneetkin vaihtuu joillakin vähän parempiin kännyköihin ja niissäkin alkaa olla Linuxia. Jos tietokone löytyy niin sitten on kyllä saattaa olla muutakin tekniikkaa jossa voi olla Linux.
Tartteisin sen koodin aika nopeesti. Voisin maksaa 700 euroo tai enemmänkin, mut sen koodin pitää sitten kans antaa ne oikeet ratkasut.
Erittäin yksinkertainen ongelmahan tuo on. Keksin ratkaisun tuohon noin 30sek miettimisellä. En vaan itse koodaa Visual Studiolla.
Luulen, ettei tule nyt kauppoja. Kai ostajana ois ollut yritys? Yksityisille en tee muutenkaan.
Sulautetuissa on linukkaa aika paljon. Semmonen vaan ei tarkota sitä, että joku komentorivikäyttöliittymä olis kovinkaan tuttu noin yleisesti.
"Sulautetuissa on linukkaa aika paljon. Semmonen vaan ei tarkota sitä, että joku komentorivikäyttöliittymä olis kovinkaan tuttu noin yleisesti."
Onhan se aika tuttu kun kouluissa sitä opetetaan. Olen käynyt peruskoulua, amista ja ammattikorkeakoulua ja joka koulussa on muuten käytetty komentoriviä.
Se on sitten eri juttu tarvitseeko sitä kenenkään käyttää missään. Enpä ole ~ikinä käyttänyt konetta niin ettenkö olisi jotain asioita tehnyt komentoriviltä kun jotkut hommat käy sillä kätevämmin mutta en usko että oikein missään työpöytäkäyttiksessä tarvisi komentoriviin koskea ellei välttämättä halua.
Vähemmistö kansastakin on niin nuoria, että oisivat edes voineet oppia koulussa komentoriviä. Suurin osa noista sitä siellä käyttäneistäkin on jo unohtanut miten se toimii kun ei tartte semmosia oikeessa elämässä oikeen missään.
Tiijän yhen ihan hyvän koodaajan joka laskuttaa muutaman sata keur vuodessa eikä osaa tota komentoriviä kun ei sitä vaan tartte missään. Vaikka varmaan kaveri sen oppis nopeesti jos tulis tarvetta. Ehkä dirrin osais ottaa winukassa, ls vois mennä liian vaikeeks noissa muissa.
Graafisissa liittymissä on yleensä se hyvä puoli, että vaihtoehot näkee heti silmillään ja se vähentää ettimisaikoja. Siksihän koodieditoreihinkin on laitettu koodien täydennyksiä ja muita korjausehotuksia. Vaikka notepädillä vois koodata, niin hitaampaa se ois kuitenkin vaikka miten muistais hommat.
Että siks en ymmärrä ollenkaan miksi IDE:n vaihto ois niin vaikeeta tai hankalaa jos dossistakaan ei oo vaikeeta vaihtaa linukkashelliin. Ei se graafisuus oo mikään paholainen.
"Suurin osa noista sitä siellä käyttäneistäkin on jo unohtanut miten se toimii kun ei tartte semmosia oikeessa elämässä oikeen missään."
Heti tulee mieleen sellainen arkinen käyttö kuin digikamerasta otettujen kuvien uudelleen nimeäminen.
"Tiijän yhen ihan hyvän koodaajan joka laskuttaa muutaman sata keur vuodessa eikä osaa tota komentoriviä kun ei sitä vaan tartte missään."
Ei ole sitten mikään korkea taso osaamiselle. Itse ohjelmoin 12-13v assemblerilla ja aiemmin Basicilla, nyt sitten millä vaan haluan ja mitä haluan mutta ei tule mieleenkään luokitella itseäni kuin tavallisen tason ohjelmoijaksi. Jos ei edes komentoriviä osaa käyttää niin tälläinen ihminen ei voi olla hyvä koska ei tunne tietotekniikasta perusteitakaan.
"Graafisissa liittymissä on yleensä se hyvä puoli, että vaihtoehot näkee heti silmillään ja se vähentää ettimisaikoja."
Mitä ihmeen ettimistä? Sehän tarkoittaa sitä että ei oikeasti osaa jos joutuu ihmettelemään ja kysymään kaikkea.
Jos keksit ratkaisun 30 sekunnissa, voit varmaan kertoa muutamassa minuutissa meillekin, miten tehtävä ratkaistaan.
Matikasta tarvisi kaivaa esiin janojen leikkauspisteen kaava. Jokaisen kolmion sivulla on sisä ja ulkoreuna. Kolmioita kun mättää pinnalle niin ne voi leikata uusia alueita, ja sitten laitetaan säiliöön lista niistä sivuista mitä leikkaavat kolmiot tekee sekä näiden muodostamista alueista.
Sitten kun pelaaja piirtää kolmion niin tarkistetaan tämän kolmion sivujen kanssa leikkauspisteet säiliössä olevien sivujen kanssa ja jokaista aluetta rajaavista sivuista pitäisi tulla ainakin yksi alue tarkistettua.
---
Näin siis pähkinänkuoressa. Janojen leikkauspisteen kaava ja tietorakenteiden valinta jääköön kotitehtäväksi.
Sinulta jäi varsinaisen ongelman ratkaisu esittämättä: miten ohjelma keksii oikean vastauksen.
Laita viidennen vaikeustason ratkaisu (eli kuuden kolmion kärkipisteiden koordinaatit) tulemaan, niin uskon sinun ratkaisseen ongelman. Kirjoitetaan sitten yhdessä aiheesta tieteellinen artikkeli; läpimeno on varmaa.
"Sinulta jäi varsinaisen ongelman ratkaisu esittämättä: miten ohjelma keksii oikean vastauksen."
Jaa tuollaista.. Minä ajattelin, että pelaaja yrittäisi sitä ratkaisua ja kone sitten tarkistaisi onnistuuko. Se että kone etsii ratkaisun on sitten selvästi astetta vaikeampi ongelma, joskaan en sano mahdottomaksi. Brute force nyt ei tietenkään käy mutta melko varmasti joku ratkaisu tuohon löytyisi kun alkaisi miettimään. Jos sitten annettaisiin jotain optimaalisuustavoitteita, että ratkaisukolmion pitäisi splitata mahdollisimman vähän alueita tai että tämän sivujen pituuden pitäisi olla mahdollisimman pieni niin se on jo oikeasti nykytietämyksen mukaan mahdotonta, joskin hakualgoritmeilla varmaan saisi ratkaisun mutta tämän todistaminen optimaaliseksi on sitten miljoonan euron arvoinen saavutus.
---
5sek miettimisellä geneettisellä algoritmilla onnistuisi varmaan hakemaan _jonkun_ ratkaisun jos antaa aikaa. En sitten sano siihen mitään kuinka kauan se veisi.
Älä viitsi, tasan varmaan teet yksityiselle kunhan fyffee ladotaan tarpeeksi handuun. Kyse on vaan rahasta, yrityksiä on helpompi rahastaa, koska niillä on enemmän rahaa (täysin triviaalia).
"Kirjoitetaan sitten yhdessä aiheesta tieteellinen artikkeli; läpimeno on varmaa."
Eli ongelma on ratkaisematta? Löytyykö tästä asiasta materiaalia ja mistä?
Lisäksi haluan tommosessa mielellään ainakin alustavan määrittelyn etukäteen. Yksityiselle kun ei ehkä oo sittenkään aina kannattavaa myydä oikeeta määrittelyä samalla tavalla kuten yrityksille.
Tosin kuten varmasti tiedät, yritykselle ja yksityiselle tekemisen ero ei ole pelkästään siinä, miten näillä on rahaa. Yksityisen osalta on lisäksi erittäin suotavaa käyttää tervettä järkeä tekemään päätös siitä, kannattaako jotain tehdä vai ei. Ei silti, ettei tuota tarvittaisi myös b2b pisneksessä, mutta kuitenkin.
Tommonen on just tyypillinen asiakas pahimmillaan. Jotkut kun ei tee oikeen selväks sitä mitä ovat oikeestaan ostamassa. Koodia, ratkasumallia, alkoritmia vai kokonaisratkasua. Vois olla hyvinkin, etten ite tarjois kun ei ois edes selvillä se mihin tätä systeemiä tarttis ihan oikeesti käyttää.
Amatöörikoodaajat ei monasti välitä tosta jutusta ollenkaan.
Kyllä, tähän ensinäkemältä melko yksinkertaiselta näyttävään ohjelmointitehtävään on kätketty toistaiseksi ratkaisematon ongelma. Kukaan ei tiedä, onko mahdollista piirtää tasolle kuutta kolmiota tehtävässä määritellyllä tavalla toisiaan. (Eli siten, että valittiinpa mikä tahansa kolmioiden osajoukko, kuviosta löytyy aina sellainen viivojen rajaama alue, joka on kaikkien valittujen kolmioiden sisäpuolella ja kaikkien muiden kolmioiden ulkopuolella.)
Ongelma on esitetty nimellä "Venn diagrams with 6 triangles" sivulla
http://dimacs.rutgers.edu/~hochberg/undopen/venn/venn.html
Laadimme erään kollegani kanssa tämän ongelman pohjalta harjoitustyön näköisen tehtävän noin vuosi sitten. Tehtävän olennaiset osat ovat näkyvissä aiemmin annetussa linkissä:
http://www.jakoon.fi/w/25020964842
Tarkoituksemme oli jäynätä tällä tehtävällä erästä opiskelijaa, joka mainosti ainakin Suomi24:ssä tekevänsä toisten ohjelmointiharjoitustöitä rahaa vastaan. Ajattelimme, että näin saattaisivat pysyä pikku kätöset poissa pahanteosta ainakin vähän aikaa ja haasteita kaipaavat aivosolutkin saisivat hieman jumppaa. Olisimme tietenkin maksaneet hänen pyytämänsä rahasumman toimivasta vastauksesta. :)
Vaikka kyseinen tehtävä onkin tahallaan rakennettu haastavaksi jopa Knuthin asteikolla, toivon sen herättävän joitakin ajatuksia myös geometrian ulkopuolelta.
Teollisuus on väärällään tehtäviä, joiden ratkaisemiseen halutaan nyt ja tulevaisuudessa tietokoneen apua. Joidenkin tehtävien sisältä voi hyvinkin löytyä todella kovia pähkinöitä purtavaksi. Ennen kuin näitä pähkinöitä voi ratkoa, ne pitää pystyä tunnistamaan. Jos ei tunnista, ei voi "katsoa netistä suoraan ratkaisut", niin kuin jossakin viestissä täällä ehdotettiin.
Tunnistamisen jälkeenkin tämä "netistä katsominen" sisältää paljon soveltamista. Käytännön ongelma kun on usein yleistä ongelmaa rajoittuneempi: sopivasti rajoitetulle kauppamatkustajan ongelmalle kannattaakin hakea aina optimaalinen ratkaisu, mutta sitä eivät yleistä ongelmaa ratkovat algoritmit järkevässä ajassa löydä.
Onnittelut nimimerkille Prööt--, joka viestiensä perusteella vaikutti olevan kartalla tehtävän vaativuuden suhteen.
Joo ei toi kamalan vaikeelta näytä kun nopeesti kattoo. Mutta kuten varmaan huomasit, sanoin ettei nyt taija tulla kauppoja tommosesta. Syitä siihen on useempikin, mutta lopputulema on sama eli tää etten ollut kiinnostunut tommosen tekemisestä.
Jos kyseessä ois ihan oikee asiakas ja oikee ongelma, niin juttuun löydettäis varmasti tarpeeks tyydyttävä ratkasu jonka asiakas haluis tilata. Tyypillisesti jos ratkasu on semmonen, että ite lopputulos ei oo se merkittävin juttu, niin silloin fiksun softatoimittajan ei semmosta kannata ryhtyä tekemäänkään.
Joo, ja netistä voi tosiaankin kattoa ongelmiin ratkasuja aika kivasti kunhan ne tosijaan tunnistaa. Sillon vaan pitää olla todelliset määrittelut tehtynä jonka virkaa ei aja tommonen kuvaus mikä tossa oli. Joku voi tehä tommosellakin, mutta meillä on aika suoraan ei kiitos tommottille.
Eikä tommosia muutenkaan muutaman tunnin laskutuksella kannata väsätä. Opiskeluhupi on asia erikseen.
'Toistaiseksi ratkaisematon' näyttäsi olevan ratkaistu:
http://www.combinatorics.org/Surveys/ds5/VennTriangleEJC.html
http://www.hpl.hp.com/techreports/2000/HPL-2000-73.pdf
Hmm..pitänee ihmetellä myöhemmin...
Kiitokset oikaisusta ja hyvistä linkeistä! Ratkaisu näyttää vakuuttavalta.
Käytin vanhentunutta lähdettä (löytämäni sivut oli päivitetty 1997, ratkaisu julkaistu 2000) ja tulin postanneeksi roskaa. Anteeksi.
Ei kielellä ole tässä ongelmassa mitään väliä. Ainoastaan olisi 'kiva' olla grafiikka- ja gui-kirjasto tai jopa gui-designer valitulle kielelle. Joten mikä tahansa yleiskieli käy.
Itse ongelma on melko hankala ja luulisin että koodarilla menee aikaa *enemmän* itse ongelmaan kuin guin tekoon (riippumatta mitä käyttää). Aika riippuu tietysti koodarista - jotkut pellet eivät löytäisi ratkaisua koskaan.
(Tietysti jos löytää valmiin ratkaisun netistä tai jostain, niin homma olisi vaan gui-tekeminen. Huijaustako?)
Hyvä esimerkki ja *muistutus* että ei ne ongelmat todellisuudessa ratkea millään super-hyper-studiolla, vaan ihan sillä ikiwanhalla biologisella hermoverkolla. Joku sanonta taisi olla että tosi guruhakkerit koodaa kynällä ja paperilla.
Jos tekisin tommosen sulle maksusta eli kyse ois pisneksestä, niin tietenkin kattoisin netistä suoraan ratkasut siihen miten toi tehään hyvin, teoreettisestikin oikeen ja tehokkaasti. Sillon kyse ei ois tietenkään huijauksesta.
Jos taas tohon ois toinen näkökulma, niin sitten vois miettiä jotain muuta.
Ite en muuten pidä Visual Studiota ongelmanratkasijana vaan hyvänä työkaluna. Semmosena jolla ongelmanratkaisun toteutuksen tekee mukavan helposti. Ihan turhaa vääntää hankalammin jos siihen ei oo pakottavaa syytä.
Ei tuo nyt kovin vaikea ole. Eli lasketaan se osa palasta mikä on toisen päällä, ja tehdään siitä oma objekti/sprite. Siten on sitten jatkossa helppo käyttää collidea apuna. Eli pari metodia, ja homman idea on siinä.