De Devschuur Coffee Corner - Iteratie ⓫ Vorige deel Overzicht Volgende deel Laatste deel

Dit topic is onderdeel van een reeks. Ga naar het meest recente topic in deze reeks.

Pagina: 1 ... 4 ... 100 Laatste
Acties:
  • 554.633 views

Acties:
  • +1 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Nu online
.oisyn schreef op woensdag 19 oktober 2016 @ 13:04:
[...]

Dat is natuurlijk nonsens. De compiler weet met welk statische type hij te maken heeft en kan dus gewoon controleren of dat type een Dispose method heeft.


[...]

Je stelt dat het zo is, maar ik zie niet in waarom het tegen SOLID zou ingaan. Integendeel, het concept dat een class een specifieke method moet implementeren is abstracter dan een class die een interface moet implementeren.
Het idee achter Dispose is dat het gebruikt wordt voor het vrijgeven van unmanaged resources binnen managed code. Omdat Dispose enkel in specifieke gevallen gebruikt wordt, en geen generieke destructor is, zou het raar zijn om methodes met een bepaalde naam een magische functie te geven. Met IDisposable dwing je eigenlijk een constraint af dat die class unmanaged resources gebruikt, en vrijgegeven moet worden.

Een ander punt is dat het volgens de specificatie mogelijk is om als programmeur Dispose zelf aan te roepen, in plaats van te wachten op de garbage collector. Dan is het hebben van een IDisposable interface erg handig, dan te klooien met reflectie om te kijken of het een Dispose methode heeft.

Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 20-09 17:02
.oisyn schreef op woensdag 19 oktober 2016 @ 14:11:
Maar die zitten in Object, en dus automatisch in alle afgeleiden types. Hoe zijn die relevant voor deze discussie? Je hoeft toch niet expliciet van Object af te leiden, want dat wordt geimpliceerd :)
Nou ja, het ging over constructies die alle typen hebben (impliciet), dus vandaar dat ik het meldt.
ThomasG schreef op woensdag 19 oktober 2016 @ 14:12:
[...]
Het idee achter Dispose is dat het gebruikt wordt voor het vrijgeven van unmanaged resources binnen managed code.
Niet alleen voor unmanaged, resources : alle resources die "zo snel mogelijk" weer vrijgegeven dienen te worden. Voor resources die "een keer" vrijgegeven mogen worden is er al een destructor ..... euh finalizer.

[edit]
Zie nu dat men wel aangeeft dat een Dispose/Finalizer alleen gedaan moet worden voor unmanaged resources.

[ Voor 41% gewijzigd door farlane op 19-10-2016 15:02 ]

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • Laurens-R
  • Registratie: December 2002
  • Laatst online: 29-12-2024
Misschien niet handig om dit te benoemen in dit topic. Alhoewel je het als members only tagged kunnen er collega's, stakeholders etc ook lid zijn van deze site :) Projectnamen en de huidige roddel rond de status benoemen kan je al de nodige last bezorgen.

Dit is goed bedoeld advies btw :) :>

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Disclaimer: puur omdat ik in mijn ogen verkeerde argumentatie als zodanig aanmerk impliceert nog niet dat ik het eens ben met de tegenpartij. Er zijn vast goede argumenten waarom een using statement een IDisposable verplicht, ik heb ze alleen nog niet gehoord.
ThomasG schreef op woensdag 19 oktober 2016 @ 14:12:
[...]
Het idee achter Dispose is dat het gebruikt wordt voor het vrijgeven van unmanaged resources binnen managed code. Omdat Dispose enkel in specifieke gevallen gebruikt wordt, en geen generieke destructor is, zou het raar zijn om methodes met een bepaalde naam een magische functie te geven. Met IDisposable dwing je eigenlijk een constraint af dat die class unmanaged resources gebruikt, en vrijgegeven moet worden.
Is eenzelfde argumentatie niet te maken voor IEnumerator? Toch vereist foreach dat niet. Een contract afdwingen is in mijn ogen iets abstracts - dat kan middels een interface, maar dat kan ook middels een vaste set aan methods/properties (zoals bij foreach het geval is).
Een ander punt is dat het volgens de specificatie mogelijk is om als programmeur Dispose zelf aan te roepen, in plaats van te wachten op de garbage collector.
Vziw roept de garbage collector nooit Dispose() aan. Als je een IDisposable implementeert, dan is eigenlijk vereist dat je ook Finalize() implementeert. Waarschuwt de compiler hier niet voor?
Dan is het hebben van een IDisposable interface erg handig, dan te klooien met reflectie om te kijken of het een Dispose methode heeft.
Daar is wat voor te zeggen. Al kan ik me geen voorbeeld verzinnen waarbij je in generieke code (dus waarbij je niet weet met wat voor object je te maken hebt) een Dispose aan zou willen roepen.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 20-09 17:02
.oisyn schreef op woensdag 19 oktober 2016 @ 14:31:
Daar is wat voor te zeggen. Al kan ik me geen voorbeeld verzinnen waarbij je in generieke code (dus waarbij je niet weet met wat voor object je te maken hebt) een Dispose aan zou willen roepen.
Zou dat niet dezelfde reden zijn waarom je in generieke code Finalize() zou aanroepen?

[edit]
Hmm, die is protected.

[ Voor 4% gewijzigd door farlane op 19-10-2016 14:56 ]

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • Mercatres
  • Registratie: September 2009
  • Laatst online: 19-09 19:50
EddoH schreef op woensdag 19 oktober 2016 @ 11:35:
[...]


Dat scheelt; die hebben we niet...
Members only:
Alleen zichtbaar voor ingelogde gebruikers. Inloggen

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 20-09 14:03
.oisyn schreef op woensdag 19 oktober 2016 @ 13:04:
[...]

Dat is natuurlijk nonsens. De compiler weet met welk statische type hij te maken heeft en kan dus gewoon controleren of dat type een Dispose method heeft. Foreach werkt toch ook? :)
Eigenlijk wel. :)
Ik wist trouwens niet dat foreach ook werkt op types die geen IEnumerable implementeren, en dat de enige voorwaarde was het hebben van een public GetEnumerator method.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 20-09 14:03
.oisyn schreef op woensdag 19 oktober 2016 @ 14:31:
Vziw roept de garbage collector nooit Dispose() aan. Als je een IDisposable implementeert, dan is eigenlijk vereist dat je ook Finalize() implementeert. Waarschuwt de compiler hier niet voor?
Niet gechecked, maar volgens mij niet. Enkel een code-analyze warning (CA1063 - Implement IDisposable correctly), maar dan moet je dit geactiveerd hebben.

[ Voor 3% gewijzigd door whoami op 19-10-2016 16:47 ]

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Hmm misschien is dat in C++/CLI, dat als je IDisposable implementeert dat je dan een destructor moet hebben (in C++/CLI mag je Dispose() niet implementeren)
whoami schreef op woensdag 19 oktober 2016 @ 16:00:
[...]

Eigenlijk wel. :)
Ik wist trouwens niet dat foreach ook werkt op types die geen IEnumerable implementeren, en dat de enige voorwaarde was het hebben van een public GetEnumerator method.
Hierbij wel de kanttekening dat het concept van foreach niet goed in een non-generic IEnumerable is samen te vatten (want die returnt een IEnumerator, en IEnumerator.Current is van het type object). En foreach is ouder dan generics. Al doet een foreach dus blijkbaar wel een cast onder water }:|.

[ Voor 66% gewijzigd door .oisyn op 19-10-2016 16:51 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • TechnischTester
  • Registratie: Oktober 2016
  • Laatst online: 19-09 19:48
SPee schreef op woensdag 19 oktober 2016 @ 11:46:
[...]

Ik gebruik dat nu, maar ik moet zeggen: ik ben geen fan!
Het is net programmeren, maar zonder een IDE die je helpt. Enige voordeel is de report die wordt gemaakt voor je. Voor de rest heeft het veel overeenkomsten met Python.
Ja dat klopt wel, al heb je wel een IDE Robot Framework Ride. Wij gebruiken het voornamelijk om ook functionele testers eenvoudig testscripts te laten maken en te onderhouden. Inmiddels kan ik met de Selenium IDE ook robot Framework scripts opnemen en daarna exporteren naar excel en hebben we dus eigenlijk geen IDE nodig.

Acties:
  • 0 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 08:50

RayNbow

Kirika <3

.oisyn schreef op woensdag 19 oktober 2016 @ 11:09:
[...]


Even de code erbij pakken ter referentie
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Unsound {
  static class Constrain<A, B extends A> {}
  static class Bind<A> {
    <B extends A>
    A upcast(Constrain<A,B> constrain, B b) {
      return b;
    }
  }
  static <T,U> U coerce(T t) {
    Constrain<U,? super T> constrain = null;
    Bind<U> bind = new Bind<U>();
    return bind.upcast(constrain, t);
  }
  public static void main(String[] args) {
    String zero = Unsound.<Integer,String>coerce(0);
  }
}


Wat ik niet helemaal snap is deze regel:
Java:
10
    Constrain<U,? super T> constrain = null;


Dit is volgens mij precies het punt waar de compiler zou moeten gaan klagen. Contstrain heeft als constraint dat B een subclass moet zijn van A. Het gebruik van Constrain<U,? super T> in de method body zou dus al tot een fout moeten leiden.
In de paper staat uitgelegd hoe de typechecker te werk gaat. Op basis van het voorbeeld worden de volgende aannames en eisen opgesteld, waarbij Z een nieuwe typevariabele is voor de wildcard in het type van de variable constrain (Constrain<U,? super T>):

a)Assumption T <: ZExplicit constraint on wildcard
b)Assumption Z <: UExplicit constraint on wildcard
c)Requirement B≡Zconstrain is a Constrain<U,Z>
d)Requirement T <: Bt is a T
e)Requirement B <: UStated by bind.upcast


Kan er aan de eisen (d en e) worden voldaan? De paper legt uit dat het eventueel kan. Eis c laat zien dat type Z, mocht deze bestaan, voldoet aan eisen d en e.

De paper gaat dan verder dat we bind.upcast alleen kunnen uitvoeren als we daadwerkelijk een Constrain<U,? super T> weten te construeren. Wanneer dit mogelijk is, is de aanroep veilig... behalve dus dat in Java null onderdeel is van elk (referentie)type.

Op reddit staat trouwens ook nog een voorbeeld.
Wat ik echter niet snap is die syntax. Kan iemand een voorbeeld bedenken waarbij je dergelijke syntax zou gebruiken in een method body, en wat dat dan zou betekenen? Waarom zou je dan niet Constrain<U,T> gebruiken?
Ik kan zelf geen voorbeeld verzinnen wanneer je het in een method body zou gebruiken. De enige keren (voor zover ik me dat kan herinneren) dat ik deze syntax gebruikte was om contravariance aan te geven in de parameters van een generieke methode.

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • 0 Henk 'm!

  • Rutix
  • Registratie: Augustus 2009
  • Laatst online: 05-09-2024
Laurens-R schreef op woensdag 19 oktober 2016 @ 14:28:
[...]


Misschien niet handig om dit te benoemen in dit topic. Alhoewel je het als members only tagged kunnen er collega's, stakeholders etc ook lid zijn van deze site :) Projectnamen en de huidige roddel rond de status benoemen kan je al de nodige last bezorgen.

Dit is goed bedoeld advies btw :) :>
Ik snap je punt maar ik heb niks genoemd wat niet in dit artikel al staat: https://www.nrc.nl/nieuws...akt-zoek-4878158-a1527247
Dingen die nog niet in de media bekend zijn ga ik uiteraard niet melden :).

Nothing to see here!


Acties:
  • 0 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 07:06
.oisyn schreef op woensdag 19 oktober 2016 @ 14:31:
[...] Al kan ik me geen voorbeeld verzinnen waarbij je in generieke code (dus waarbij je niet weet met wat voor object je te maken hebt) een Dispose aan zou willen roepen.
Ik ook niet echt eerlijk gezegd. Ik viel alleen over het verschil tussen (blijkbaar) foreach en using. Wat mij betreft vereisen ze of beide een expliciete interface of beide alleen de aanwezigheid van een bepaalde functie, maar niet wat er nu is.

Acties:
  • 0 Henk 'm!

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
foreach en using doen onderwater hetzelfde hoor: op een gegeven object roepen ze bepaalde methodes aan, die zijn gedefinieerd in een interface.

using roept IDisposable aan, waar foreach gebruik maakt van IEnumerable of IEnumerable<T>. Geen magie aan.

We are shaping the future


Acties:
  • +3 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 08:50

RayNbow

Kirika <3

Alex) schreef op donderdag 20 oktober 2016 @ 08:14:
foreach en using doen onderwater hetzelfde hoor: op een gegeven object roepen ze bepaalde methodes aan, die zijn gedefinieerd in een interface.

using roept IDisposable aan, waar foreach gebruik maakt van IEnumerable of IEnumerable<T>. Geen magie aan.
Oh? Gooi dit eens in LINQPad:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void Main()
{
    foreach (var randomNumber in new RandomD20011025())
    {
        Console.WriteLine(randomNumber);
    }
}

class RandomD20011025
{
    public class Enumerator
    {
        private const int NINE = 9;
        
        public bool MoveNext()
        {
            return true;
        }
        
        public int Current
        {
            get { return NINE; }
        }
    }

    public Enumerator GetEnumerator()
    {
        return new Enumerator();
    }
}


Geen IEnumerable te bekennen. :+

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 01:32

alienfruit

the alien you never expected

Als je een Cola, een broodje en een muffin koopt bij een bepaalde winkel op oneven dagen dan krijg je de muffin gratis :) QA en code review is het nog niet opgevallen :>

[ Voor 16% gewijzigd door alienfruit op 20-10-2016 10:33 ]


Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

RayNbow schreef op woensdag 19 oktober 2016 @ 18:53:
De paper gaat dan verder dat we bind.upcast alleen kunnen uitvoeren als we daadwerkelijk een Constrain<U,? super T> weten te construeren. Wanneer dit mogelijk is, is de aanroep veilig... behalve dus dat in Java null onderdeel is van elk (referentie)type.
null is dan ook wel een fout in elk statisch typesysteem. Het hele idee van een typesysteem is dat als je om een type Foo vraagt, de typechecker je garandeert dat je ook echt een Foo hebt. Null gaat daar keihard tegenin. Je houdt nog een mooie dynamische check over.

Java is een statisch getypeerde taal, behalve null, die is dynamisch getypeerd.


Al hebben de typesysteem-stukmakers ook een voorbeeld waarin ze geen null gebruiken.

[ Voor 5% gewijzigd door bwerg op 20-10-2016 10:51 ]

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 20-09 14:03

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

Los van of het een goede ontwerpkeuze is (wat natuurlijk vaak genoeg bediscussiëerd wordt - voor zover er nog voorstanders zijn :+) breekt het m.i. dus ook inherent statische typesystemen.

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • +1 Henk 'm!

  • RobertMe
  • Registratie: Maart 2009
  • Laatst online: 10:07
Dus eigenlijk is typehinting in combinatie met null iets wat PHP wel goed doet? :+

Want als je een parameter typehint zet mag null ook niet meer. Alhoewel je de parameter wel default null kunt maken en dan mag je wel ook null meegeven. En in PHP 7.1 kun je volgensmij de typehint "nullable" maken door een "?" ervoor te zetten. Dus "function foo(DateTime $bar)" mag null niet maar dan krijg je "(?DateTime $bar)" en mag het wel. Waar je nu dus "(DateTime $bar = null)" kunt doen, maar dan is de param dus weer optioneel.

Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

RobertMe schreef op donderdag 20 oktober 2016 @ 11:22:
Dus eigenlijk is typehinting in combinatie met null iets wat PHP wel goed doet? :+
Geen PHP-kennis hier, maar mijn klacht ging over niet statisch getypeerd zijn terwijl een taal dat wel pretendeert. PHP pretendeert dat überhaupt al niet...

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 10:32
Een symfony 2.6 applicatie omschrijven naar 3.1 is een echt probleem. Vooral de Request in de CompilerPass :F

Mijn dag zo ver is het continue runnen en laten falen van unittesten :P

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • wackmaniac
  • Registratie: Februari 2004
  • Laatst online: 19-09 18:02
iRicardo schreef op donderdag 20 oktober 2016 @ 14:15:
Mijn dag zo ver is het continue runnen en laten falen van unittesten :P
Als je de tests tussendoor repareert is je dag een stuk productiever ;)

Read the code, write the code, be the code!


Acties:
  • 0 Henk 'm!

  • RagingPenguin
  • Registratie: December 2012
  • Niet online
bwerg schreef op donderdag 20 oktober 2016 @ 11:29:
[...]

Geen PHP-kennis hier, maar mijn klacht ging over niet statisch getypeerd zijn terwijl een taal dat wel pretendeert. PHP pretendeert dat überhaupt al niet...
PHP is niet statisch getypeerd, maar heeft wel een typesysteem. Zie dit stukje code:
PHP:
1
2
3
4
5
class Foo {}

function a(Foo $foo){}

a(null);

De laatste regel code faalt hier omdat null niet van het type Foo is. Al zou je null wel willen toestaan als type van Foo dan moet je dat expleciet aangegeven met een '?':
PHP:
1
2
3
4
5
class Foo {}

function a(?Foo $foo){}

a(null);

Dit stukje code runt dus weer wel.

Typescript heeft sinds Typescript 2 iets soortgelijks, maar dan voor alle variables. Het volgende stukje code geeft een compileerror omdat null niet van het type Foo is:
TypeScript:
1
2
3
4
5
class Foo {}

var a : Foo;

a = null;


Al zou je dit wel willen toestaan dan moet je (weer) expliciet aangeven dat a ook null mag zijn:
TypeScript:
1
2
3
4
5
class Foo {}

var a : Foo | null;

var a = null;

Dit geeft dan geen compileerror.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

RayNbow schreef op donderdag 20 oktober 2016 @ 08:34:
[...]


Oh? Gooi dit eens in LINQPad:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void Main()
{
    foreach (var randomNumber in new RandomD20011025())
    {
        Console.WriteLine(randomNumber);
    }
}

class RandomD20011025
{
    public class Enumerator
    {
        private const int NINE = 9;
        
        public bool MoveNext()
        {
            return true;
        }
        
        public int Current
        {
            get { return NINE; }
        }
    }

    public Enumerator GetEnumerator()
    {
        return new Enumerator();
    }
}


Geen IEnumerable te bekennen. :+
+1 voor de Dilbert reference ;)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Alex) schreef op donderdag 20 oktober 2016 @ 08:14:
foreach en using doen onderwater hetzelfde hoor: op een gegeven object roepen ze bepaalde methodes aan, die zijn gedefinieerd in een interface.

using roept IDisposable aan, waar foreach gebruik maakt van IEnumerable of IEnumerable<T>. Geen magie aan.
Natuurlijk is er geen magie aan 8)7 of ze nou vereisen dat een object een interface implementeert (zoals using) of gewoon direct de methods aanroept zonder morren (zoals foreach). In beide gevallen is het gewoon syntactische suiker, en wordt je code gewoon intern getransformeerd naar iets anders.

Using
C#:
1
2
3
using (type x = expr)
{
}

wordt
C#:
1
2
3
4
5
6
7
8
9
type x = expr;
try
{
   // ...
}
finally
{
   ((IDisposable)x).Dispose();
}


Foreach
C#:
1
2
3
4
foreach (type x in expr)
{
    // ...
}

wordt
C#:
1
2
3
4
5
6
7
var _expr = expr;
var _enum = _expr.GetEnumerator();
while (_enum.MoveNext())
{
    type x = _enum.Current;
    // ...
}

Hier wel een caveat, als het (statische) type van 'expr' IDisposable implementeert, dan wordt hij ook correct gedisposed aan het eind.

Dit is trouwens wel meteen een mooi voorbeeld van "generieke" code die Dispose aanroept wanneer nodig :). Het is niet zo expliciet als 'using', en je wilt het denk ik niet zomaar doen voor iets dat gewoon een Dispose() method heeft.

[ Voor 68% gewijzigd door .oisyn op 20-10-2016 15:02 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

RagingPenguin schreef op donderdag 20 oktober 2016 @ 14:35:
De laatste regel code faalt hier omdat null niet van het type Foo is.
De vraag is of het compile-time of runtime faalt. Als het runtime faalt, dan is het niet veel anders dan if (x != null) { exception }, maakt niet heel veel uit hoe je zo'n check opschrijft.
Typescript heeft sinds Typescript 2 iets soortgelijks, maar dan voor alle variables.
Dit hebben heel veel talen. Een ding (null) wat van alle types is is gewoon flauwekul. In veel functionele talen zit het hele ding niet, geen enkele behoefte aan.

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • 0 Henk 'm!

  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 17-09 11:07

TheNephilim

Wtfuzzle

Livestream via P2P techdemo; https://www.webrtc2cdn.io/. Heb em nu een tijdje aan staan, maar dat scheelt toch ruim 50% aan dataverkeer vanaf het CDN zelf.

Acties:
  • 0 Henk 'm!

  • Megamind
  • Registratie: Augustus 2002
  • Laatst online: 10-09 22:45
TheNephilim schreef op donderdag 20 oktober 2016 @ 16:43:
Livestream via P2P techdemo; https://www.webrtc2cdn.io/. Heb em nu een tijdje aan staan, maar dat scheelt toch ruim 50% aan dataverkeer vanaf het CDN zelf.
code:
1
0% P2P 100% CDN

Lijkt niet helemaal te werken nog.

Acties:
  • 0 Henk 'm!

  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 17-09 11:07

TheNephilim

Wtfuzzle

Megamind schreef op donderdag 20 oktober 2016 @ 16:54:
[...]


code:
1
0% P2P 100% CDN

Lijkt niet helemaal te werken nog.
Oh, misschien duurt het even. Zie hieronder de resultaten bij mij, toch best netjes.

My P2P download: 216.6 MB

My P2P upload: 20.4 MB

My CDN download: 131.3 MB

CDN traffic saved: 62 %

Acties:
  • 0 Henk 'm!

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 04-09 08:16

OkkE

CSS influencer :+

Connected peers: 19

code:
1
2
100% P2P 
0% CDN


Edit:
Je ziet het steeds vaker dat bedrijven P2P inzetten voor het verspreiden van grote hoeveelheden data; patches van Blizzard o.a. Volgens mij gebruikt ook Netflix al zo iets. Maar het is heel tof om te zien dat het ook naar de standaard Browser komt.

[ Voor 72% gewijzigd door OkkE op 20-10-2016 17:12 ]

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Acties:
  • 0 Henk 'm!

  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 17-09 11:07

TheNephilim

Wtfuzzle

100% P2P, das netjes :o

Acties:
  • 0 Henk 'm!

  • mbarie
  • Registratie: Mei 2011
  • Laatst online: 04-08-2021
OkkE schreef op donderdag 20 oktober 2016 @ 17:10:
Connected peers: 19

code:
1
2
100% P2P 
0% CDN


Edit:
Je ziet het steeds vaker dat bedrijven P2P inzetten voor het verspreiden van grote hoeveelheden data; patches van Blizzard o.a. Volgens mij gebruikt ook Netflix al zo iets. Maar het is heel tof om te zien dat het ook naar de standaard Browser komt.
Spotify had ook p2p, maar dat hebben ze volgens mij uitgezet en gecentraliseerd. Netflix weet ik niet, ik weet wel dat ze in de netwerken van ISP zelf caching bakken hebben staan om de meest populaire content dicht bij de eindgebruiker te hebben. We hebben er bij on 1 staan.

Storyteller @ soundcloud


Acties:
  • 0 Henk 'm!

  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 17-09 11:07

TheNephilim

Wtfuzzle

mbarie schreef op vrijdag 21 oktober 2016 @ 07:40:
[...]


Spotify had ook p2p, maar dat hebben ze volgens mij uitgezet en gecentraliseerd. Netflix weet ik niet, ik weet wel dat ze in de netwerken van ISP zelf caching bakken hebben staan om de meest populaire content dicht bij de eindgebruiker te hebben. We hebben er bij on 1 staan.
Klopt, Netflix heeft inderdaad cache-servers staan bij ISP's. Wel slim ook, de ISP heeft er vooral gemak van en de gebruiker heeft ook op die manier minder last van latency/storingen/etc.

Voor Twitch zou het wellicht een oplossing kunnen zijn. Dat zijn allemaal live streams waar soms tienduizenden mensen naar kijken. Zou enorm aan data moeten schelen. Live streams bekijk je sowieso al snel 'tegelijk' waarbij filmpjes op bijv. YouTube veel meer willekeurig bekeken worden en ook vaak korter, al dan niet 'zappend'.

Acties:
  • 0 Henk 'm!

  • dcm360
  • Registratie: December 2006
  • Niet online

dcm360

Moderator Discord

HD7767 powered

Hm, een mailinglist die aangeleverde e-mailadressen omzet naar lowercase. Ik vraag me af waarom daar voor gekozen is... Naast dat ik zelf in de hoek mag gaan staan omdat mijn code case sensitive is, wat wellicht niet handig is met e-mailadressen zoals ik net al merkte.

Acties:
  • 0 Henk 'm!

  • Mercatres
  • Registratie: September 2009
  • Laatst online: 19-09 19:50
Nieuw kantoor, zelfde setup: links laptop, foor me 1x 24" iiyama landscape, rechts 1x 24" portrait voor code.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Ik zit al een week te twijfelen. 42" 4k scherm voor development werk, of niet?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

Hmm....dat is wel...sort of....heel groot..zegmaar. Beetje overdreven bijna. Straalt wel een beetje - 'kijk mij eens een huge big ass f*cking monitor hebben' - uit.


Ik zou het doen dus.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Dat is inderdaad een heel goed punt :P.

Maar ik ben bang dat het vooral te hoog is. Kwa breedte is het goed te doen, dat haal je met 2 monitoren ook wel.

Ik loop al bijna een jaar de bakkelijen over wat voor monitor ik moet nemen. 1440p met hoge refresh rate (en gsync?) voor gamen, of toch een grote 4k voor coden.

[ Voor 34% gewijzigd door .oisyn op 21-10-2016 16:34 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 10:13

Onbekend

...

Het is afhankelijk wat je nog meer doet zoals technisch support of documenteren.
Zelf werk ik met twee 27" monitoren en dat werkt voor mij een stuk sneller dan 1 grotere monitor. Je zit namelijk vaak maar op 1 monitor te kijken, maar je wil je hoofd niet te vaak bewegen om alles te kunnen zien.

Speel ook Balls Connect en Repeat


Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

.oisyn schreef op vrijdag 21 oktober 2016 @ 16:32:
Dat is inderdaad een heel goed punt :P.

Maar ik ben bang dat het vooral te hoog is. Kwa breedte is het goed te doen, dat haal je met 2 monitoren ook wel.

Ik loop al bijna een jaar de bakkelijen over wat voor monitor ik moet nemen. 1440p met hoge refresh rate (en gsync?) voor gamen, of toch een grote 4k voor coden.
Ik vraag me vooral af hoe je window manegement gaat doen op zo'n grote desktop. Fullscreen is geen optie denk ik, dus zul je al met third-party window managers moeten werken om je scherm op te delen.

(wellicht loop ik een beetje achter met moderne ingebouwde Windows functionaliteiten..)

Acties:
  • 0 Henk 'm!

  • Johan.B
  • Registratie: Maart 2007
  • Laatst online: 19-09 14:59
EddoH schreef op vrijdag 21 oktober 2016 @ 16:37:
[...]
(wellicht loop ik een beetje achter met moderne ingebouwde Windows functionaliteiten..)
Met de windows toets + de pijltjes kom je al heel ver.

[ Voor 28% gewijzigd door Johan.B op 21-10-2016 16:40 ]


Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

Johan.B schreef op vrijdag 21 oktober 2016 @ 16:40:
[...]


Met de windows toets + de pijltjes kom je al heel ver.
Niet in de hoogte :) Verrek, ook in de hoogte. Ik gebruik die eigenlijk alleen voor linkerkant/rechterkant scherm.

[ Voor 20% gewijzigd door EddoH op 21-10-2016 16:49 ]


Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

.oisyn schreef op vrijdag 21 oktober 2016 @ 16:32:
Dat is inderdaad een heel goed punt :P.

Maar ik ben bang dat het vooral te hoog is. Kwa breedte is het goed te doen, dat haal je met 2 monitoren ook wel.

Ik loop al bijna een jaar de bakkelijen over wat voor monitor ik moet nemen. 1440p met hoge refresh rate (en gsync?) voor gamen, of toch een grote 4k voor coden.
Ik heb nu bijna een jaar een 40" 4k en ik wil niet meer anders.
De breedte was geen enkel probleem omdat ik al jaren met een triple monitor opstelling werk en de hoogte was even wennen, maar inmiddels ben ik daar ook helemaal aan gewend.

Ondanks genoeg pixels heb ik toch nog steeds 2 27" aan weerszijden staan omdat het het beste aansluit bij mijn workflow ofzo.
Het voelt op een of andere manier prettiger om andere activiteiten naar een andere fysieke monitor te slepen.
Beetje lastig uit te leggen.

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • -ko-
  • Registratie: Oktober 2006
  • Laatst online: 18-09 16:23

-ko-

Leidend Voorwerp

Johan.B schreef op vrijdag 21 oktober 2016 @ 16:40:
[...]


Met de windows toets + de pijltjes kom je al heel ver.
:D Ik zit altijd te klooien met een venster waarvan ik wil dat het precies de helft van mijn scherm inneemt, op de linker en rechter buitenkant is dat geen issue, dan doet Windows dat met de muis. In het "midden" moet ik echter altijd manueel sizen en met die shortcut hoeft dat niet meer. :)

Wa Doede Nou


Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

Divvy is ook wel handig voor specifieke layouts

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

EddoH schreef op vrijdag 21 oktober 2016 @ 16:37:
[...]


Ik vraag me vooral af hoe je window manegement gaat doen op zo'n grote desktop. Fullscreen is geen optie denk ik, dus zul je al met third-party window managers moeten werken om je scherm op te delen.

(wellicht loop ik een beetje achter met moderne ingebouwde Windows functionaliteiten..)
pricewatch: Philips BDM4350UC Zwart
Die kan evt 4x full HD tegelijk weergeven. Dan verbindt ik alle inputs gewoon met mijn PC en dan heb ik feitelijk 4 monitoren :+

Maar er zijn genoeg window managers die het kunnen tegenwoordig. Dan kun je het ook gewoon helemaal indelen zoals je het zelf wilt (bijv. 3 kolommen en die in het midden iets breder)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
.oisyn schreef op vrijdag 21 oktober 2016 @ 16:32:
Dat is inderdaad een heel goed punt :P.

Maar ik ben bang dat het vooral te hoog is. Kwa breedte is het goed te doen, dat haal je met 2 monitoren ook wel.

Ik loop al bijna een jaar de bakkelijen over wat voor monitor ik moet nemen. 1440p met hoge refresh rate (en gsync?) voor gamen, of toch een grote 4k voor coden.
Ik zou vooral wachten op een goede HDR monitor eigenlijk. Voor dev werk mss niet heel interessant, dan zou ik gewoon voor 2x 4K gaan.

Acties:
  • 0 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Nu online
.oisyn schreef op vrijdag 21 oktober 2016 @ 17:06:
[...]


pricewatch: Philips BDM4350UC Zwart
Die kan evt 4x full HD tegelijk weergeven. Dan verbindt ik alle inputs gewoon met mijn PC en dan heb ik feitelijk 4 monitoren :+

Maar er zijn genoeg window managers die het kunnen tegenwoordig. Dan kun je het ook gewoon helemaal indelen zoals je het zelf wilt (bijv. 3 kolommen en die in het midden iets breder)
Persoonlijk vind ik dat veel te groot als werkscherm. Ik zit zelf op ongeveer een armlengte van mijn scherm, en ik vind het dan prettig als ik in een oogopslag het gehele scherm kan bekijken. 30" vind ik daarbij toch echt wel het maximale om comfortabel zo'n 8 uur mee te werken. 42" is gewoon te groot, of je moet je scherm op het bureau van je collega zetten.

Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

ThomasG schreef op vrijdag 21 oktober 2016 @ 21:04:
[...]
Persoonlijk vind ik dat veel te groot als werkscherm. Ik zit zelf op ongeveer een armlengte van mijn scherm, en ik vind het dan prettig als ik in een oogopslag het gehele scherm kan bekijken. 30" vind ik daarbij toch echt wel het maximale om comfortabel zo'n 8 uur mee te werken. 42" is gewoon te groot, of je moet je scherm op het bureau van je collega zetten.
Heb je er echt ervaring mee?
Je gebruikt het ook anders dan een 'normaal' scherm.
Je hoeft niet alles in een oogopslag te zien omdat je veel meer gaat werken met floating windows.
Ik had eerst altijd alles fullscreen, nu zelden. Er zwerven her en der wat schermen op het scherm en je kijkt steeds naar een ander gedeelte.
Bepaalde apps, zoals o.a Visual Studio heb ik wel fullscreen, maar daar kan je juist die extra ruimte heerlijk benutten door meerdere tabs naast of onder elkaar te hebben en je debug windows etc.
Ik vind het juist verschrikkelijk als ik soms mensen zie klooien op zo'n pruts laptopschermpje waar 2 regels code zichtbaar is en de rest opgepropte toolbars en docks.

Lekker op de bank


Acties:
  • 0 Henk 'm!

Verwijderd

ZaZ schreef op vrijdag 21 oktober 2016 @ 17:05:
Divvy is ook wel handig voor specifieke layouts
Flexbox is ook wel handig voor layouts :+

Acties:
  • 0 Henk 'm!

  • incaz
  • Registratie: Augustus 2012
  • Laatst online: 15-11-2022
Verwijderd schreef op zondag 23 oktober 2016 @ 08:43:
[...]


Flexbox is ook wel handig voor layouts :+
Huh, valt me toch tegen hoor. Als de children zelf weer diverse dingen bevatten gaat het regelmatig mis en pak ik toch maar weer display: table.

Never explain with stupidity where malice is a better explanation


Acties:
  • 0 Henk 'm!

  • Rutix
  • Registratie: Augustus 2009
  • Laatst online: 05-09-2024
ZaZ schreef op zaterdag 22 oktober 2016 @ 23:27:
[...]

Heb je er echt ervaring mee?
Je gebruikt het ook anders dan een 'normaal' scherm.
Je hoeft niet alles in een oogopslag te zien omdat je veel meer gaat werken met floating windows.
Ik had eerst altijd alles fullscreen, nu zelden. Er zwerven her en der wat schermen op het scherm en je kijkt steeds naar een ander gedeelte.
Bepaalde apps, zoals o.a Visual Studio heb ik wel fullscreen, maar daar kan je juist die extra ruimte heerlijk benutten door meerdere tabs naast of onder elkaar te hebben en je debug windows etc.
Ik vind het juist verschrikkelijk als ik soms mensen zie klooien op zo'n pruts laptopschermpje waar 2 regels code zichtbaar is en de rest opgepropte toolbars en docks.
Dat is ook weer het ene uiterste natuurlijk ;). Ik werk vaak met 2x 24" inch schermen, ik vind dat al groot op de afstand dat ik erop zit.

Nothing to see here!


Acties:
  • 0 Henk 'm!

  • Hatsieflatsie
  • Registratie: Oktober 2011
  • Laatst online: 15-09 10:32
.oisyn schreef op vrijdag 21 oktober 2016 @ 16:32:
Dat is inderdaad een heel goed punt :P.

Maar ik ben bang dat het vooral te hoog is. Kwa breedte is het goed te doen, dat haal je met 2 monitoren ook wel.

Ik loop al bijna een jaar de bakkelijen over wat voor monitor ik moet nemen. 1440p met hoge refresh rate (en gsync?) voor gamen, of toch een grote 4k voor coden.
Los van de resolutie, zorg voor dat je 16:10 hebt.

Ik heb hier 3x 30 inch IPS panelen, ieder een resolutie van 2560x1600.

Vooral de 16:10 ratio is veel beter dan 16:9.

Afbeeldingslocatie: https://flatpanelshd.com/pictures/dellu2711_large7.JPG

Links Dell 27 inch met 16:9 verhouding (2560x1440p), rechts Dell 30 inch met 16:10 verhouding (2560x1600p). Scheelt VEEL scrollwerk. Je leest pagina's toch ook van boven naar beneden, ipv langszij?

Nou dan. 16:9 is niet geschikt voor computerwerk.


Naast dat veel dingen op die resolutie klein lijken te zijn om goed te kunnen aflezen, is de 16:9 ratio alleen ideaal als je films kijkt. Maar je leest toch meestal tekst op je monitor.


Beter neem je 2560x1600, 16:10 ratio. Stukken fijner met browsen, etc.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Als ik een 4k scherm heb scheelt dat nóg meer scrollwerk :). De verhouding boeit natuurlijk alleen als je altijd met maximized windows werkt.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • incaz
  • Registratie: Augustus 2012
  • Laatst online: 15-11-2022
Hatsieflatsie schreef op zondag 23 oktober 2016 @ 20:42:
Links Dell 27 inch met 16:9 verhouding (2560x1440p), rechts Dell 30 inch met 16:10 verhouding (2560x1600p). Scheelt VEEL scrollwerk. Je leest pagina's toch ook van boven naar beneden, ipv langszij?
In dat geval kun je het scherm misschien beter in portrait zetten, heb je nog meer verticale ruimte!

Ik vond zelf de verticale ruimte niet echt belangrijk - en ik zet juist wel vrij veel naast elkaar. Wel dat beide monitoren als het even kan even groot zijn want ik vond het vooral knap irritant als de muis vastliep op het hoekje tussen de schermen.
(En ik wil graag eyetracking autofocus.)

Never explain with stupidity where malice is a better explanation


Acties:
  • 0 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Nu online
Sowieso is het eigenlijk een must dat als je met meerdere schermen werkt, deze allemaal exact hetzelfde model zijn (en dus zelfde resolutie en diameter). Of in ieder geval van het zelfde merk. Anders krijg je altijd situaties waar je ze niet op de zelfde hoogte krijgt, en dat de kleuren en helderheid niet overeenkomen.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Mwoa. Ik werk thuis al jaren met verschillende resolutie monitoren (omdat ik altijd steeds maar 1 monitor heb geüpgraded, waarna de oudste de deur uit ging en alles dus opschoof). Ik heb er zelden echt last van. Het is wel handig als de pixeldichtheid een beetje overeenkomt.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • dcm360
  • Registratie: December 2006
  • Niet online

dcm360

Moderator Discord

HD7767 powered

Het laatste wat .oisyn opmerkt ben ik het wel mee eens: het werkt niet bepaald lekker als ik mijn laptop naast een losse monitor zet, want de pixeldichtheid wijkt met de schermen die ik heb een factor anderhalf af. Ik raak de cursor dan ook vaker wel dan niet kwijt als ik die naar een ander scherm beweeg. Ook raakt de cursor vaak vast in een hoek omdat het inschatten van de verspringing lastig is.

Normaal gesproken werk ik echter aan mijn pc met 3 nogal verschillende schermen, die wel dezelfde pixeldichtheid hebben. Door er voor te zorgen dat in de beeldscherminstellingen de schermen goed verticaal uitgelijnd zijn, verschijnt de cursor bij het bewegen naar een ander scherm even groot en op dezelfde hoogte. Dat er links 15% verschil in hoogte is maakt niet eens zo erg uit, het is vrij intuïtief dat er hoekjes zijn waarin de muis vast kan lopen omdat er in het echt daar ook geen scherm naast zit om naar toe te bewegen (en beweeg ik de muis dus ook niet klem die hoeken in).

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Nou idd. Ik heb een keer een 24" 1920x1200 monitor als 2e monitor aan mijn Surface Pro 1 (10.6" 1080p) gehangen. Dat is echt een ramp :P

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

Effe wat PHP bashen...
Voor een projectje maak ik gebruik van Advanced Installer.
Die genereert o.a files in ini formaat maar met de .txt extensie.
Nu is er een website gemaakt in PHP die de file wil uitlezen, maar die vertikt het als de extensie niet .ini is.
WTF is dat nou weer? |:(

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • Firesphere
  • Registratie: September 2010
  • Laatst online: 08:50

Firesphere

Yoshis before Hoshis

ZaZ schreef op maandag 24 oktober 2016 @ 02:16:
Effe wat PHP bashen...
Voor een projectje maak ik gebruik van Advanced Installer.
Die genereert o.a files in ini formaat maar met de .txt extensie.
Nu is er een website gemaakt in PHP die de file wil uitlezen, maar die vertikt het als de extensie niet .ini is.
WTF is dat nou weer? |:(
Ik vind het genereren van .ini files, maar ze de extensie .txt gebruiken raarder dan dat php's read_ini_file() alleen maar .ini accepteert.

I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 07:06
Sinds wanneer staat dit topic niet meer in webdesign?

Acties:
  • 0 Henk 'm!

  • mbarie
  • Registratie: Mei 2011
  • Laatst online: 04-08-2021
Ik denk dat ze bij het aanmaken van de nieuwe iteratie vergeten zijn deze topic daar ook neer te zetten.

Storyteller @ soundcloud


Acties:
  • 0 Henk 'm!

  • Acid_Burn
  • Registratie: Augustus 2001
  • Laatst online: 19-09 11:23

Acid_Burn

uhuh

ZaZ schreef op maandag 24 oktober 2016 @ 02:16:
Effe wat PHP bashen...
Voor een projectje maak ik gebruik van Advanced Installer.
Die genereert o.a files in ini formaat maar met de .txt extensie.
Nu is er een website gemaakt in PHP die de file wil uitlezen, maar die vertikt het als de extensie niet .ini is.
WTF is dat nou weer? |:(
Wat heeft dat met PHP te maken? Dat is toch de programmeur die besluit niets anders in te willen lezen?

Glass Eye Photography | Zelfbouw wireless fightstick | Mijn puzzel site


Acties:
  • 0 Henk 'm!

  • RMX
  • Registratie: Augustus 2000
  • Laatst online: 18-09 21:56

RMX

Acid_Burn schreef op maandag 24 oktober 2016 @ 08:51:
[...]

Wat heeft dat met PHP te maken? Dat is toch de programmeur die besluit niets anders in te willen lezen?
Even het menselijk brein bashen..

Acties:
  • 0 Henk 'm!

  • Tjolk
  • Registratie: Juni 2007
  • Laatst online: 09:49
.oisyn schreef op vrijdag 21 oktober 2016 @ 17:06:
[...]


pricewatch: Philips BDM4350UC Zwart
Die kan evt 4x full HD tegelijk weergeven. Dan verbindt ik alle inputs gewoon met mijn PC en dan heb ik feitelijk 4 monitoren :+

Maar er zijn genoeg window managers die het kunnen tegenwoordig. Dan kun je het ook gewoon helemaal indelen zoals je het zelf wilt (bijv. 3 kolommen en die in het midden iets breder)
Mijn televisie (die op 4 meter van mijn bank staat) is nog kleiner. :o

Persoonlijk heb ik overigens liever 2 schermen naast elkaar, zodat ik die ook wat kan draaien richting mijn zitpositie. Staan onder een hoek van ± 150° - 160°. Als ik ze recht naast elkaar zou zetten kijkt dat toch minder prettig is mijn beleving. Nu kun je zoiets natuurlijk ook met je 42" scherm proberen, maar de meesten kunnen daar niet zo goed tegen. :P

Tjolk is lekker. overal en altijd.


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Caelorum schreef op maandag 24 oktober 2016 @ 08:21:
Sinds wanneer staat dit topic niet meer in webdesign?
Dit topic heeft daar nooit gestaan. De vorige delen wel :+

.edit: Fixed.

[ Voor 3% gewijzigd door .oisyn op 24-10-2016 09:45 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

Acid_Burn schreef op maandag 24 oktober 2016 @ 08:51:
[...]

Wat heeft dat met PHP te maken? Dat is toch de programmeur die besluit niets anders in te willen lezen?
Hoewel ik de keuze om een .ini file de .txt extensie te geven vreemd vind is er technisch geen enkel reden om 'm te laten falen. Een filename is een naam, niet veel meer dan dat.
Als PHP om wat voor reden dan ook de filename toch belangrijk vindt, kunnen ze het op zijn minst in de documentatie zetten.

GetPrivateProfileString uit de winapi kan je bijvoorbeeld ook alles voeren.

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • Mercatres
  • Registratie: September 2009
  • Laatst online: 19-09 19:50
Aaaargh! Windows 10 Updates :( Vorige week al problemen met één laptop, leek het opgelost te zijn (na een clean install), komt ie nu weer moeilijk doen. Recovery blijft ook een drama.
Lang leve deftige back-ups.
En dat terwijl er nog ontwikkeld moet worden :/

Acties:
  • 0 Henk 'm!

  • Acid_Burn
  • Registratie: Augustus 2001
  • Laatst online: 19-09 11:23

Acid_Burn

uhuh

ZaZ schreef op maandag 24 oktober 2016 @ 10:46:
[...]

Hoewel ik de keuze om een .ini file de .txt extensie te geven vreemd vind is er technisch geen enkel reden om 'm te laten falen. Een filename is een naam, niet veel meer dan dat.
Als PHP om wat voor reden dan ook de filename toch belangrijk vindt, kunnen ze het op zijn minst in de documentatie zetten.

GetPrivateProfileString uit de winapi kan je bijvoorbeeld ook alles voeren.
Hoe wordt die ini file uitgelezen dan? Dat mis ik nog even.

Glass Eye Photography | Zelfbouw wireless fightstick | Mijn puzzel site


Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

Acid_Burn schreef op maandag 24 oktober 2016 @ 10:51:
[...]


Hoe wordt die ini file uitgelezen dan? Dat mis ik nog even.
parse_ini_file

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • Acid_Burn
  • Registratie: Augustus 2001
  • Laatst online: 19-09 11:23

Acid_Burn

uhuh

Net even geprobeerd. een .txt file met ini structuur parsed ie bij mij prima. Dus het lijkt me dat er iets anders aan de hand is.

[ Voor 25% gewijzigd door Acid_Burn op 24-10-2016 10:56 ]

Glass Eye Photography | Zelfbouw wireless fightstick | Mijn puzzel site


Acties:
  • 0 Henk 'm!

  • Pizzalucht
  • Registratie: Januari 2011
  • Laatst online: 08:40

Pizzalucht

Snotneus.

ZaZ schreef op maandag 24 oktober 2016 @ 10:46:
[...]

Hoewel ik de keuze om een .ini file de .txt extensie te geven vreemd vind is er technisch geen enkel reden om 'm te laten falen. Een filename is een naam, niet veel meer dan dat.
Als PHP om wat voor reden dan ook de filename toch belangrijk vindt, kunnen ze het op zijn minst in de documentatie zetten.

GetPrivateProfileString uit de winapi kan je bijvoorbeeld ook alles voeren.
En er zit niks in de applicatie zelf wat de extensie checked?

Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

Acid_Burn schreef op maandag 24 oktober 2016 @ 10:55:
Net even geprobeerd. een .txt file met ini structuur parsed ie bij mij prima. Dus het lijkt me dat er iets anders aan de hand is.
Hmm, ik zal het tegen het mannetje wat het php werk doet zeggen.
Die vertelt mij namelijk dat het niet werkt met .txt extensie en als ie 'm renamed naar .ini dat het dan wel werkt.
Pizzalucht schreef op maandag 24 oktober 2016 @ 11:00:
[...]
En er zit niks in de applicatie zelf wat de extensie checked?
Het gaat om de autoupdater van een installatiepakket.
Hoewel ik niet weet waarom denk ik wel te kunnen raden waarom er voor een andere extensie gekozen is.
Een executable moet een update file uitlezen van een webserver. De .ini extensie wordt vaak geblokkeerd.
Zal wel vaak gezeur hebben opgeleverd en dat ze het standaard maar .txt hebben genoemd.
Ze hadden 'm ook kunnen renamen naar .html, maar dat zou nog raarder zijn :+

Maar goed, dat is gewoon een gokje van mijn kant hoor. Ik weet het niet.

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

ZaZ schreef op maandag 24 oktober 2016 @ 11:07:
[...]

Hmm, ik zal het tegen het mannetje wat het php werk doet zeggen.
Die vertelt mij namelijk dat het niet werkt met .txt extensie en als ie 'm renamed naar .ini dat het dan wel werkt.
Omdat hij "file.ini" uitleest ipv "file.txt"? :+

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • DevWouter
  • Registratie: Februari 2016
  • Laatst online: 01:02

DevWouter

Creator of Todo2d.com

.oisyn schreef op maandag 24 oktober 2016 @ 11:36:
[...]

Omdat hij "file.ini" uitleest ipv "file.txt"? :+
Of het leest file.txt.ini :+

"Doubt—the concern that my views may not be entirely correct—is the true friend of wisdom and (along with empathy, to which it’s related) the greatest enemy of polarization." -- Václav Havel


Acties:
  • 0 Henk 'm!

  • wackmaniac
  • Registratie: Februari 2004
  • Laatst online: 19-09 18:02
Wat @Acid_Burn zegt; de functie kijkt niet naar extensie, dus ik zou dit lekker bij de ontwikkelaar zoeken :)

Read the code, write the code, be the code!


Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 10:32
Ik was even vergeten hoeveel pijn het was om Redmine met nginx te installeren als je al een nginx instance hebt 8)7

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • Hipska
  • Registratie: Mei 2008
  • Laatst online: 15-09 21:08
iRicardo schreef op maandag 24 oktober 2016 @ 14:44:
Ik was even vergeten hoeveel pijn het was om Redmine met nginx te installeren als je al een nginx instance hebt 8)7
Bij mij komt het maar tot daar, we zijn dan ook aan het uitkijken naar een ander support systeem, want voor software dev gebruiken we het niet echt (meer).

Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 10:32
Hipska schreef op maandag 24 oktober 2016 @ 18:02:
[...]

Bij mij komt het maar tot daar, we zijn dan ook aan het uitkijken naar een ander support systeem, want voor software dev gebruiken we het niet echt (meer).
Wij zijn nu ook uitgeweken naar Jira (self hosted) om de integratie met Bitbucket soepel te laten verlopen. Een aanrader. Als je hulp nodig hebt horen we het graag! :)

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • Rutix
  • Registratie: Augustus 2009
  • Laatst online: 05-09-2024
De self-hosted JIRA die ik ken is echt een drama. Als je geen JIRA maintainers hebt die snappen hoe het moet word er zo'n rotzooi van gemaakt. Wij zijn dus vooral uitgeweken naar TFS omdat daar wel mensen zijn die weten hoe ze dat moeten beheren.

Nothing to see here!


Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 10:32
Rutix schreef op maandag 24 oktober 2016 @ 23:16:
De self-hosted JIRA die ik ken is echt een drama. Als je geen JIRA maintainers hebt die snappen hoe het moet word er zo'n rotzooi van gemaakt. Wij zijn dus vooral uitgeweken naar TFS omdat daar wel mensen zijn die weten hoe ze dat moeten beheren.
Wij maintainen ongeveer +-45 jira installaties. Ik ken je pijn maar met hier en daar wat automatisering en enkel 2 uurtjes per week zijn al onze jira instances snel en schoon.

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • +1 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-08 14:24

ZaZ

Tweakers abonnee

wackmaniac schreef op maandag 24 oktober 2016 @ 14:23:
Wat @Acid_Burn zegt; de functie kijkt niet naar extensie, dus ik zou dit lekker bij de ontwikkelaar zoeken :)
Ik heb geen idee wat ie geprobeerd heeft maar ik heb de code zelf maar aangepast en het werkt inderdaad gewoon.
*trekt php bash weer in*

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • Pizzalucht
  • Registratie: Januari 2011
  • Laatst online: 08:40

Pizzalucht

Snotneus.

ZaZ schreef op dinsdag 25 oktober 2016 @ 00:47:
[...]

*trekt php bash weer in*
Dat is nou ook weer niet nodig :+

Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Rutix schreef op maandag 24 oktober 2016 @ 23:16:
De self-hosted JIRA die ik ken is echt een drama. Als je geen JIRA maintainers hebt die snappen hoe het moet word er zo'n rotzooi van gemaakt.
Uhm. Kun je niet JIRA voor bijna elk willekeurig systeem vervangen? Als je dingen zelf gaat hosten moet je je daar ff in verdiepen ja. Als je dat niet wil, prima, daar zijn SaaS oplossingen ideaal voor.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 08:50

RayNbow

Kirika <3

TIFFGetField:
C:
1
2
3
4
5
uint16 count;
void *data;

TIFFGetField(tiff, 33424, &count, &data);
printf("Tag %d: %d, count %d0, 33424, *(uint32 *)data, count);

_O-

...behalve dat de documentatie fout is en het een 32 bits int moet zijn. :F

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • +1 Henk 'm!

  • Jegorex
  • Registratie: April 2004
  • Laatst online: 03-09 23:24
Members only:
Alleen zichtbaar voor ingelogde gebruikers. Inloggen

Acties:
  • 0 Henk 'm!

  • Mercatres
  • Registratie: September 2009
  • Laatst online: 19-09 19:50
iRicardo schreef op maandag 24 oktober 2016 @ 18:38:
[...]

Wij zijn nu ook uitgeweken naar Jira (self hosted) om de integratie met Bitbucket soepel te laten verlopen. Een aanrader. Als je hulp nodig hebt horen we het graag! :)
De Jira Cloud werkt ook heel lekker met Bitbucket (duh, 't is ook van Atlassian) :)

Acties:
  • 0 Henk 'm!

  • Laurens-R
  • Registratie: December 2002
  • Laatst online: 29-12-2024
Pfffff..... weer een dag back-2-back meetings gehad... zit er weer op!

Morgen hopelijk wat tijd om ook daadwerkelijk werk te verzetten :/

Acties:
  • 0 Henk 'm!

  • Rutix
  • Registratie: Augustus 2009
  • Laatst online: 05-09-2024
Hydra schreef op dinsdag 25 oktober 2016 @ 09:49:
[...]


Uhm. Kun je niet JIRA voor bijna elk willekeurig systeem vervangen? Als je dingen zelf gaat hosten moet je je daar ff in verdiepen ja. Als je dat niet wil, prima, daar zijn SaaS oplossingen ideaal voor.
Ik zeg daarom toch ook "de self-hosted die ik ken". Het ging erom dat Redmine zo moeilijk was op te zetten in bepaalde gevallen en toen werd JIRA als alternatief aangedragen ;). Ik wilde met mijn opmerking alleen maar zeggen dat self-hosted JIRA ook niet heel makkelijk is voor veel mensen.

Nothing to see here!


Acties:
  • 0 Henk 'm!

  • Megamind
  • Registratie: Augustus 2002
  • Laatst online: 10-09 22:45
Heeft iemand wel eens met TargetProcess gewerkt? Wij draaien er nu een maandje mee en werkt best prima.

Acties:
  • 0 Henk 'm!

  • F.West98
  • Registratie: Juni 2009
  • Laatst online: 02:24

F.West98

Alweer 16 jaar hier

Heeft iemand een korte samenvatting van wat ik de afgelopen 1,5-2 weken heb gemist?
* F.West98 is net terug van vakantie 8)

2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI


Acties:
  • +1 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 07:06
Nu je terug bent kunnen we het weer over alle standaard onderwerpen hebben :)

Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 10:32
F.West98 schreef op dinsdag 25 oktober 2016 @ 19:08:
Heeft iemand een korte samenvatting van wat ik de afgelopen 1,5-2 weken heb gemist?
* F.West98 is net terug van vakantie 8)
Welkom terug! Niet eens gemerkt dat je weg was :P

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • Swedish Clown
  • Registratie: November 2010
  • Laatst online: 10-04 22:41

Swedish Clown

Erlang <3

Laurens-R schreef op dinsdag 25 oktober 2016 @ 16:35:
Pfffff..... weer een dag back-2-back meetings gehad... zit er weer op!

Morgen hopelijk wat tijd om ook daadwerkelijk werk te verzetten :/
Altijd fijn! Jij bent aangesteld als dev toch? Hoe kan het dan dat je een hele dag back2back meetings hebt?

Onze Product Manager gaat namens ons naar alle meetings en wij hebben als team gesteld dat hij max 1 persoon van het team mee mag nemen en enkel indien er op technisch niveau het een en ander uitgesproken moet worden. De PM heeft uitstekende kennis van ons domein dus in realiteit hebben wij zelden meetings 8)

Kan het iedereen aanraden om een dergelijke stroom te verkennen d:)b

Always looking for developers wanting to work with Erlang.


Acties:
  • 0 Henk 'm!

  • ard1998
  • Registratie: December 2015
  • Laatst online: 09-06 19:59
F.West98 schreef op dinsdag 25 oktober 2016 @ 19:08:
Heeft iemand een korte samenvatting van wat ik de afgelopen 1,5-2 weken heb gemist?
* F.West98 is net terug van vakantie 8)
Beetje php, en een paar ervaringen. Niet veel.

Acties:
  • 0 Henk 'm!

  • Laurens-R
  • Registratie: December 2002
  • Laatst online: 29-12-2024
Brakkie41 schreef op woensdag 26 oktober 2016 @ 09:05:
[...]


Altijd fijn! Jij bent aangesteld als dev toch? Hoe kan het dan dat je een hele dag back2back meetings hebt?

Onze Product Manager gaat namens ons naar alle meetings en wij hebben als team gesteld dat hij max 1 persoon van het team mee mag nemen en enkel indien er op technisch niveau het een en ander uitgesproken moet worden. De PM heeft uitstekende kennis van ons domein dus in realiteit hebben wij zelden meetings 8)

Kan het iedereen aanraden om een dergelijke stroom te verkennen d:)b
Ik ben dev, maar ook tech lead en project manager voor verschillende projecten... dus het is de hele dag jongleren met technisch en management werk :P 8)7

Acties:
  • 0 Henk 'm!

  • F.West98
  • Registratie: Juni 2009
  • Laatst online: 02:24

F.West98

Alweer 16 jaar hier

iRicardo schreef op woensdag 26 oktober 2016 @ 08:28:
[...]

Welkom terug! Niet eens gemerkt dat je weg was :P
}:|
Ik post de laatste tijd volgens mij wel minder, dus dat zou het kunnen zijn. Maargoed, Beijing is een bijzondere stad :)

2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Waarom zijn we ooit opgehouden het Peking te noemen? We zeggen toch ook niet London en Paris?

[ Voor 28% gewijzigd door .oisyn op 26-10-2016 13:49 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1 ... 4 ... 100 Laatste

Dit topic is gesloten.

Let op:
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep voor iedereen in de Devschuur® en niet als vraagbaak.