{% include themes/hacking-in-the-dark/fragments/left_box.html %}
{{ content }}
{% include themes/hacking-in-the-dark/fragments/right_box.html %}
{% include themes/hacking-in-the-dark/fragments/meta.html %} {% include themes/hacking-in-the-dark/fragments/js/common.html %} {% include themes/hacking-in-the-dark/fragments/css/common.html %} {% comment %}fav and touch icons{% endcomment %} {% comment %} {% endcomment %} {% include themes/hacking-in-the-dark/fragments/js/header.html %} {% include JB/analytics %}
{% include themes/hacking-in-the-dark/fragments/js/facebook_sdk.html %}


jQuery News Slider - Demo
Bottom-Right Aligned, Random Animation, Visible Navigation
Top-Left Aligned, Random Animation, Hidden Navigation


Lorem ipsum dolor sit amet consectetur adipisicing.
Author Name
07 January | 6 min read
WorldWise is a website where I put my brain out.
I like to pen down my opinion and experiences on a plethora of topics, ranging from social issues to humor, from romantic poetry to articles on marketing. When I'm not writing, I must be reading something over web. I like meeting new people at times and embrace the changes as they come. I'd rather talk about Humanity than talking about my country, religion or race.


40.3
The Development from July to DecemberJuly: In the meantime the "WASA KING" specification dated 25.09.92 which had been received at the exhibition from the Turku Repair Yard - see Enclosure 3.4.96 - had been translated and evaluated. See Subchapter 3.4 - when Tuomo Karppinen phoned on 1 July and reported the following:
- He would finish the Report in two weeks, then everything would be in the printing house and the printing would start.
- The result would be the 1st draft which would then be sent to all members and experts for comments to be delivered by mid August. The enclosures would be in a separate supplement of about 500 pages.
- After printing of the final version the Report would be published circa mid to end September.
- A new Swedish Commission would be formed to investigate everything the Swedish Government did or did not in connection with the ESTONIA;
- Karppinen was then asked whether he knew about the repair specification dated 25.09.92 - Enclosure 3.4.96 - which he confirmed and further advised that he had spoken with Tuomo Mäkki about it, who had made an offer for the bow ramp hinges but not for the visor locking devices.
Note: This is true. Behind the respective item is a handwritten note: "Price to be quoted after visual inspection." Apparently Mäkki never inspected the locking devices visually because in the meantime it had been decided to sell the vessel and only those items were repaired by the sellers which had to be rectified according to the sales contract.
Karppinen further explained that he had also spoken to the last Finnish inspector, Charles Richardson from Wasa Line, who had told him that at the time the specification was made up by the crew they did not know that the vessel would be sold.- Next the possibility that the Atlantic lock had been changed after newbuilding was discussed and Karppinen said that there was a small chance because the basic primer of the visor lug was found to be yellow but on the starboard lug grey.
Note: Actually the basic primer of all lugs had been yellow at newbuilding - see Subchapter 2.4.6 and Enclosure <IP_ADDRESS>.
- Finally Karppinen advised that it had been decided that this 'Group of Experts' would receive no parts whatsoever from the JAIC Report before the publication.August: On 13 August Tuomo Karppinen advised on the following:
- The draft version of their Report had now been distributed to the members and experts except for three chapters which are still missing.
- He expects amendments, because after all delegations have read through the draft he is certain that not everybody will agree. - Amendments are sent to him and he incorporates them into the existing text.
- They still hope to publish around the 3rd anniversary.
On 15 August the Swedish JAIC had a working meeting in Stockholm.September: From 3 to 5 September the Swedish JAIC went again through the text of the Report and apparently concluded the matter. During this meeting it came to a clash of different opinions which led to the resignation of the psychological expert Bengt Schager three days later on 8 September. In a subsequent interview by Jutta Rabe, Bengt Schager did explain the situation as follows:
"BS: It was a meeting where we should look at the text. I was prepared for that meeting because as I figured out, it was the last chance to alter some of the details in a favourable way as I regard it is the truth. I was very well prepared and got the message that this meeting would only deal with the language problems and such things and that the report should be printed even though not all the chapters were ready, I didn't think that this was a proper way of working with it and then I told them that I would resign and, also I might mention, before that, when Olof Forssberg was the Swedish chairman, he was in favour for the opportunity for me of having a special opinion also printed into the report and then, later on, I understood that Mr. Laur would never allow a special opinion from me printed in the report. This, together with the rush in timing was the basis for my decision, and the long frustration also.
Q: But you emphasize just at this moment that their truth and your truth, so there is a difference between your truth and their truth?
A: There is a discrepancy and, of course, I believe that I am right, but I don't know and that's why I would like to be revealed my thinking when the report is there, so that everyone who is reading the report and listening to me, or, perhaps is reading what I am writing at that time and can see for themselves and judge, because when you are one against 20 you have some difficulties with, you have consequences with your relations, with the rest of them, and arguing for something, when you have 20 against you, of which 10 are silent but hostile and 10 are arguing against you, you have a friend at your side frequently saying: "Bengt, stop, for heaven's sake, stop," then you may come to a point, where you are really questioning yourself. Then, after a while, you have to continue because you are believing in a certain thing and the rest of them could not really give me good arguments. So, then you have to continue, in a way. Even though, of course, it makes you sometimes a little bit uncertain whether you really have right or not."On 18 September Tuomo Karppinen started during a telephone conversation:
- He received the comments/corrections from members and experts on Monday, 8 September, and has given the corrections to the printing house this Monday, 15 September.
- He will receive three printed copies in about two weeks which will then be read through again by the English language expert and himself at least twice.
- Then the final version goes to the printing house and then it takes 4-5 weeks, i.e. publication mid to end November.On 22 September during a further telephone conversation Tuomo Karppinen said that they will have another full commission meeting in Tallinn due to unexpected difficulties with the text and only thereafter the final corrections can be made and printing started, i.e. publication early December.
On the same day "SVENSKA DAGBLADET" published an ariticle which contained the first interview with Bengt Schager after his resignation and which reads - office translated - as follows:
"'Estonia' Report is Protecting the Crew.
The 'Estonia' Report is incomplete. The Estonian chairman tries to avoid criticizing the crew and this has disturbed the work of the commission, alleges an expert, who resigned from the investigation.
Turbulent Investigation.
The investigation of the International Commission was accompanied by numerous delays, censorship, accusations, criticism by the Judicial Ombudsman and change of chairmen.
July 1996: The Estonian Chairman Andi Meister resigned after having severely criticized the Swedish part of the Commission.
May 1997: Olof Forssberg, chairman of the Swedish part of the Commission, was forced to resign after having lied to a radio reporter.
"I don't trust the Commission any longer", said Bengt Schager, psychological expert of the 'Estonia' Commission, who resigned from the investigation under protest. Now the 'Estonia' Report, which will be submitted to the printing house shortly, risks loosing much of its credibility.
Bengt Schager is of the opinion that the commission did not properly investigate the safety culture onboard of 'Estonia'. The question was much too sensitive. "There has been a preparedness to talk matters and circumstances unfavourable for the crew to their advantage."
Bad Quality.
The 'Estonia' Commission is a three-nation commission with experts and members from Estonia, Finland and Sweden. B. Schager means that the work was very much disturbed by the obligation to reach agreement. The Swedes and Finns had frequently considered giving up.
"It has been so important to keep the Commission together to avoid that somebody acts on his own initiative", he said.
"I do not believe that the quality of the report is good. You find more lessons to learn from this casualty than is mentioned in the report, there had actually been lots of defects onboard", said Bengt Schager after almost 3 years work.
Ferry Sentenced to Death.
Bengt Schager stressed that there is no disagreement inside the Commission about the main cause of the casualty: These were technical defects which sank 'Estonia' down into the depth. The large ferry was sentenced to death. This conclusion has never been in dispute.
The question about the acting of the Estonian crew in the very situation has, however, been in dispute the more, Bengt Schager is of the opinion that there are lots of question marks.
"There are lots of things which belong into the report but which you cannot find there", he said. B. Schager is critical about the way the report deals with the acting of the crew: "Safety culture was with certainty not at the standard which could be expected".
But he means that also other parts are defect. "Certain analysis work was more or less just average work. We should have gone much more into detail and investigated much deeper", he said pointing at the fact that they were practically investigating Europe's largest ferry casualty in modern times.
Stressed Commission.
B. Schager sees two reasons why the investigation, according to him, shall remain faulty (imperfect): Certain questions have been sensitive whilst the commission has simultaneously been permanently under stress.
The investigation requirements could not withstand the requirements of the media for a quick completion and, therefore, an incomplete report shall be submitted.
B. Schager means that the Estonia Commission should have permitted herself to investigate the matter properly."
The article is attached as Enclosure 40.3.481.The interview is self-explanatory. It confirms the bad atmosphere inside the JAIC which existed practically from the very beginning, at first due to the dominant behaviour of Börje Stenström, followed by the discrepancies which led to the resignation of Andi Meister and finally due to the attempt of Uno Laur to protect Estonian interests.
On the 3rd anniversary of the catastrophe "SVENSKA DAGBLADET" published a small article under the heading "Investigation of the 'Estonia' Catastrophe" which reads - office translated - as follows:
"Criminal Violation of the Maritime Law and/or Causing Other Persons' Death" is the heading under which the Criminal Police is investigating the 'Estonia' catastrophe going on parallel with the investigation of the International Commission. In addition to survivors' statements the police and the chief prosecutor have among other things interrogated representatives of N&T, who had the technical responsibility for the vessel and of the classification society B.V. who approved vessel's construction and condition. "Some further interro-gations are pending", said chief prosecutor Tomas Lindstrand, who is leading the inquiry. The purpose of the inquiry is to find out it somebody will have to be prosecuted for the 'Estonia' catastrophe."October: On 17 October Tuomo Karppinen reported as follows:
- The report was changed at the recent meeting and, as a matter of fact, they are still discussing details.
- Next week the English language expert will come again for two days and check the report whereafter it will go to the printing house.
- He estimates that it will take several weeks before the final version is printed and they would be happy if the publication could take place before the end of the year because this is what the politicians are demanding from them.
- He said further that they were aware that "REGINA BALTICA" is either "VIKING SAGA" or "VIKING SONG", but they did not look into the "NORD ESTONIA" matter and they also had not realised that Ulf Hobro had been employed with Sjöfartsverket as safety inspector before he joined N&T.
On 20 October Tuomo Karppinen reported more details:
- They have had a meeting in Helsinki with Ann-Louise Eksborg and Uno Laur attending when the report and some minor changes were finally discussed. Casualty scenario and cause considerations remained unchanged. The report is now finalised.
- Commencing tomorrow he will go through the changes together with their English language expert Bing Crossfield from London, which might take two or three days.
- Thereafter the changes will be worked into the existing manuscript by the printers and a further manuscript will be printed, which he hopes to receive around 26/27 October.
- He will then go through the complete manuscript once again and hopes to be able to submit the final version by the beginning of November, i.e. week 45, to the printers who will then commence printing 5000 copies, which will hopefully be completed in week 49.
- This means that the report will be published either in week 49 or 50. The exact date will be fixed as soon as printing has started.
- Since the summer, i.e. after the exhibition of this 'Group of Experts', they have included a new chapter into their report which concerns the "upper extension of the collision bulkhead above bulkhead deck = car deck" and have tried to find an explanation for the attitudes of Sjöfartsverket and Finska Sjöfartstyrelse.
Thereafter it was decided to have an up-date exhibition in Stockholm during the time of publication of the JAIC Report and the preparations commenced straight away.November: In the early days the Swedish TV 2 program "STRIPTEASE" showed the second part of their "Estonia" investigation. It was apparent that the "STRIPTEASE" journalists had a copy of the Final JAIC Report or one of the drafts of it, which they had submitted to Prof. Vassalous of the West Clyde University, Glasgow, one of the leading naval architects in the UK. Vassalous was asked to give an opinion on the technical part and the conclusions, which he did.
The JAIC had concluded:
"The casualty sequence may have started around 00.55 hours when an A.B. seaman heard a metallic bang behind bow ramp. Locks and hinges broke completely through one or two heavy waves just after 01.00 hours. Consequence: The locks were too weak. 'Estonia' had met similar wave conditions only once or twice earlier between Tallinn and Stockholm. The accident occurred under conditions that were probably the worst she had ever encountered. The casualty has no pre-history, everything happened in one sequence and very quickly."
" Vassalous commented:"To reach ultimate loads at sea so that the components could fail in one or two loads is highly unlikely . Most components that fail at sea do so because of fatigue, there must have been a pre-history. Therefore the cause for the failures has to be found in the condition of the ship, and especially of the visor."
" The professor did not accept that the visor was really completely o.k. on the casualty night nor did he accept that the conditions were unique. He stated that cyclic loading is the nature of any structure, failure caused by fatigue loading is "a fact of marine life".
Failure to use common sense by the JAIC was his conclusion.
More uncertainty came up when the General Director of the E.N.M.B. and Estonian observer in the JAIC, Kalle Pedak, and the head of the Maritime Division (Department) of the E.N.M.B., Aarne Valgma, went public by giving an interview to the Baltic News Service about the circumstances surrounding the diving investigation of the ESTONIA in December 1994 when only Aarne Valgma had represented the Estonian side.
The following is quoted from BNS message:
"The divers' mission, which lasted for 64 hours, was filmed and the video picture was continuously forwarded to the support vessel. The Swedish Maritime Administration, which had commissioned the mission, supervised it from aboard the same ship, and also the Swedish criminal police observed the course of the mission there.
Valgma said that during the 64-hour mission there were moments when there was no video picture on his monitor.
"All I can presume is that the diving work was not filmed during those breaks." Valgma told BNS on Thursday. Maritime Department general director Kalle Pedak said it was not very likely there were breaks in the video recording during the divers' mission.
"Valgma had admitted that at intervals he saw no video picture in his monitor room and had no access to the ship's main monitor", Pedak told BNS. "I believe there was a video picture on the main monitor all the time, because the divers were constantly watched".
Pedak and Valgma didn't want to comment on why the video picture was interrupted on the Estonian observer's monitor.""
The complete wording of the message is attached as Enclosure 40.3.482.
On 17 November the following message was received from the JAIC:
"Re: Press conference concerning the presentation of the Final Report of MV 'Estonia'
The Joint Estonian, Finnish and Swedish Commission to investigate the 'Estonia' catastrophe presents its Final Report on 3rd December. The Commission meets in Tallinn to present the Report jointly at 12.00 hours. Simultaneously the Report is submitted to the Swedish and Finnish Governments. A press conference shall be held in Estonia as follows:
Date : Wednesday, 3rd December 1997
Time : 13.00 hours
Place : Sakala Centre, 12 Rävala Avenne, Tallinn
The Report, which is in English, can be simultaneously picked up, i.e. at the BoA/Stockholm at 11.00 hours and at the BoA/Helsinki at 12.00 hours." T
his was the end of the communication between the JAIC and this 'Group of Experts' because the JAIC ceased to exist after the publication of their Final Report.40.4
The Second Exhibition in Stockholm 1 to 14 December 1997The Motivation
The decision to have another Exhibition in Stockholm before, during and after the publication of the Final Report of the International Commission was based on
(a) the growing certainty that the International Commission would conclude in their final report that the casualty was mainly caused by the too weak locking devices of the visor due to faulty design, etc.;
(b) the fact that such an Exhibition was the only possibility of proving quickly and convincingly to the national and international media as well as to the Swedish public that the above-mentioned conclusions were wrong;
(c) the frequently stated wish of many visitors to the 1st Exhibition to come back and give them the chance of comparing the findings of the JAIC with the findings of the German 'Group of Experts' after the Final Report had been published.Preparations
Based on the experience with the 1st Exhibition it was decided to organise everything in close cooperation with the two relative organisations SEA and DIS and moreover to invite them to perform the exhibition jointly with this 'Group of Experts' and participate actively in the day-to-day preparations. This was welcomed by both organisations. Whilst SEA offered the assistance of their vice chairman Odd Lundkvist, who had been a conference/exhibition manager before his retirement, DIS offered the services of their technical expert Alve Wendt as exhibition guide in order to help this 'Group of Experts' with the many visitors to be expected. In addition, SEA would show their own little exhibition simultaneously. The SEA exhibition would draw attention to the crucial mistakes made by the Swedish government in the handling of the ESTONIA affair. DIS wanted to put up some screens whereupon they would outline what they thought were the real causes for the disaster and who had done what wrong.
When it was definite that the Final Report would be published on 3 December, 1997 in Tallinn and copies could be picked up simultaneously in the JAIC offices in Helsinki and Stockholm the following arrangements were made:
- advertisements should appear on 29/30 November, on 1 and 2 December, and again on 8 December
o in DAGENS NYHETER, SVENSKA DAGBLADET, AFTONBLADET, METRO - all in Stockholm and countrywide;
o in GÖTEBORG POSTEN appearing in Gothenburg and along the Swedish West Coast with the following text:
- the media were invited for 4 December;
- the opening times of the Exhibition were announced to all members of Parliament, the navigation schools and public schools in Stockholm and surroundings, all members of DIS and SEA, the Swedish survivors and many others.The Exhibition
After arrival on 30 November 1997 a first review of the Sunday papers revealed the following:
- DAGENS NYHETER: two complete pages with the headlines:
(1) "The Final Report About Estonia : Nobody Will Be Blamed."
"Interview With The Survivor Carl Övberg."
(2) "The Swedish Maritime Administration Acknowledges Mistakes."
"Estonia and Diana II Received Exemptions. In Spite Of Many Warnings About Dangerous Visors The Safety Was Not Improved."- AFTENBLADET: one full page:
"Estonia Had A Crack In Her Hull."- GÖTEBORG POSTEN: Front page:
"Doubts Why Did Estonia Sink."
One further complete page: "It is impossible to dispel the doubts."
Interview with Olof Forsberg, the previous chairman of the Swedish Commission.
"Disputes about the visor."
"Mine explosions and Mafia Sabotage: Such explanations for Estonia's foundering require fantasy. There are, however, also well founded alternatives to the conclusions of the Commission."This 'Group of Experts' was only mentioned in connection with other investigation results and alternative conclusions to those of the Commission.
This time no one was invited to the opening nor was there a press conference on the occasion of the opening, nevertheless visitors started streaming in right from the beginning and it can be said that the average number per day was in the range of 200, however, there were days with twice this figure.
The visitors spent a lot of time with reading, had less questions and thus the stress for the Exhibition guides was much less than previously.
Also the atmosphere this time was different right from the beginning, it was much more relaxed and free of tension, which was certainly to a considerable extent due to the presence of the representatives of the relative organisations, mainly the SEA Exhibition represented by Odd Lundkvist.1st day - 1 December 1997
Visitors started to stream in even before the Exhibition was opened at 11.00 hours. The day was full of pre-arranged interviews with German Finnish, Swedish and English TV and radio teams. Nobody from the writing press was spotted.2nd day - 2 December 1997
Whilst the chair lady of the Swedish Commission together with the administrator Gunnel Göransson were in Tallinn to attend the ceremony on the next day Lennart Berglund and Odd Lundkvist managed to obtain substantial parts of manuscript of the Final Report and members of this 'Group of Experts' started immediately to analyse the contents.
The chairman of the Association of Swedish Marine Underwriters, Sten Gathenborg, paid a visit to the Exhibition and everything was explained to him. He asked thereafter whether it would be possible to have a private show for the Swedish Marine Underwriters without the public and this was agreed for 9 December, from 08.30 to 11.00 hours.
In the afternoon the Hamburg office phoned and informed that two complete sets of the Final Report of the Commission including supplements had just arrived by courier from Kari Lethola, the chairman of the Finnish JAIC, which meant that almost 24 hours before the official publication the JAIC Report was available to this 'Group of Experts'. The main parts were sent by fax and the analysis commenced at once in order to have some comments already on the following day.
During the evening and parts of the night the Report was analysed as well as possible and already then it became quite obvious that
The conclusions were -
as already in the Part-Report from April 1995 - that "the visor attachments
were not designed according to realistic design assumptions ..." and "the
attachments were constructed with less strength than the simplistic calculations
required", etc.
So not very much had changed during the past 3 years, almost nothing of
what this 'Group of Experts' had submitted to the JAIC had been taken into
account, it was thus still the Yard and only the Yard on which blame was
put.
The defence was prepared straight away by so-called "First Remarks on the
Report of the International Commission" of which 400 copies were distributed
to visitors until the closing of the Exhibition. One copy is attached as
Enclosures
40.4.483.
3rd day - 3 December
1997
As of 11.00 hours the Report plus Supplements could be picked up by anybody
at the office of the Swedish JAIC.
An article appeared in "DAGENS NYHETER" wherein the previous psychology
expert Bengt Schager, who had resigned from the JAIC in September, stated
that ESTONIA had left Tallinn in an unseaworthy condition referring to the
evidence of the Sjöfartsverket inspector Åke Sjöblom, who had left the vessel
only shortly before her departure. This led to additional questions from
many visitors.
Next, Gerhard Klahn phoned from Ystad in Southern Sweden and stated to have
seen a TV interview with the above-mentioned Åke Sjöblom shortly after the
casualty during which he had said that they had found the bow ramp in a
totally unsatisfactory condition and had strongly recommended to their Estonian
colleagues not to permit the ferry to sail in this condition, which, however,
was ignored. He was then asked by the journalist what he would have done
if he had checked the ESTONIA in a Swedish port? He replied that under absolutely
no circumstance would the ferry have left port.
4th day - 4 December
1997
This was the day of the press conference of this 'Group of Experts' right
in the middle of the Exhibition. It began at 11.00 hours with approximately
40 journalists and four camera teams attending, many of whom had been in
Tallinn the day before. (Reportedly some 200 persons attended the press
conference of the JAIC.) Dr. Holtappels submitted the first analysis of
the JAIC's Report, drew attention to the obvious mistakes and wrong conclusions,
answered numerous questions from partly very insistent journalists who were
much better prepared than they had been in June. Simultaneously the survivor
from the 1st deck, Carl Övberg, was introduced to the media and told his
story and answered questions.
Thereafter it was explained by means of the models that the scenario of
the JAIC was not possible to have happened and, as a comparison, this 'Group
of Experts' scenario was presented, as supported by the statements of the
survivors and other facts.
The two main newspapers in Stockholm reacted as follows:
1) DAGENS NYHETER:
- Front page: Top story the Jeltsin visit covering most of the page. A small
column on the left side: "Estonia: The yard bears the main responsibility."
- Page 2: "Estonia Without Finale. The work of the three nation commission
is clearly meeting opposition."
- Page 5: Full page: "The Locks Of The Visor Were Too Weak."
The Yard is criticised by the Commission. The locks had insufficient dimensions.
A drawing illustrates the weak points including the damaged visor and ramp
hinges, the gap in the bow ramp, the missing and damaged rubber packings,
etc. with detailed explanations.
Also the scenarios of the Commission and of this 'Group of Experts' were
illustrated and compared with each other.
Comments from Uno Laur, Dr. Holtappels, Inez Uzman, a speaker for the Ship
Owners' Association and Lennart Berglund were quoted.
Mini portraits of Arvo Andresson, Andi Meister, Kent Härstedt, Jan-Tore
Thörnroos, Silver Linde and Margus Treu were shown, who were considered
to be the main persons of the drama.
- Page 6: The names of
the 852 persons having lost their lives (full page).
- Page 7: Full page: "Difficult Decision Not To Recover (The Bodies)." "Distress
Call Came Too Late." "Nobody Will Be Prosecuted."
2) SVENSKA DAGBLADET:
- Front page: Top story "The 'Estonia' Report". Heavy waves and weak construction
of the visor sank ESTONIA. These are the conclusions of the International
Commission's Report. The catastrophe could however have been avoided if
the Classification Society Bureau Veritas had been more alert.
Headline: "Bureau Veritas Is Accused." "The Catastrophe Step By Step." Only
at the bottom is there a small note on the Jeltsin Visit.
- Page 2: Two-column comment: "After Three Years."
- Page 4: Full page: "Weak Visor Picked Out As Casualty Cause". New information
in the Final Report of the Commission puts the blame for the weak visor
which caused the casualty on the Yard and Bureau Veritas.
"The Yard Criticises Many Items." "More And Better Locks On Russian Vessels."
Drawings illustrate the last hour of ESTONIA and the scenario of the Commission.
Interview with Wanda Wanninger (Wachtmeister).
3) GÖTEBORG POSTEN:
- Page 1: Three-quarters of page: "Weak Locks And Late Alarm. ESTONIA's
Sinking Explained On 228 Pages. Now The Legal Follow-up Begins."
5th day - 5 December
1997
The reactions to the press conference were:
- in DAGENS NYHETER : Nothing.
- in SVENSKA DAGBLADET : On page 6 a quarter-page article: "The German Yard
Criticizes The Report."
- in TT PRESSEN (nationwide): "The Yard does not accept any blame."
- in GÖTEBORG POSTEN: "German Criticism Against The Estonia Report."
"The Yard Is Supported By Sweden." Christer Lindvall, managing director
of the Swedish Masters' and Ship Officers' Association, agrees to a certain
extent that 'ESTONIA' sank due to poor maintenance and not faulty design
or construction by Meyer Werft.
In the morning Lennart Berglund and Anders Lindström, managing director
of Sjöfartsverket, were interviewed on Breakfast TV and Lennart Berglund
stated to have reliable information that Åke Sjöblom had discovered the
damaged bow ramp and tried to stop the ferry. Lindström reacted with obvious
shock and said he knew nothing about this, but would certainly investigate
it.
This triggered off some press activities which were, however, overshadowed
by the new developments in the Palme murder case, which were told to the
media in a separate press conference at 10.00 hours. Probably for this reason
the press conferences of DIS and SEA at the same time were just attended
by one or two journalists.
6th day - 8 December
1997
The Exhibition was reopened at 11.00 hours and the visitors streamed in
more than before and the questions were sharper and more precise because
all of them had read the comments in the papers, followed the TV and radio
comments and sometimes had even studied the JAIC's Report respectively were
in the process of doing so and wanted to fill gaps by looking at the Exhibition
and asking questions. This was exactly what this 'Group of Experts' had
expected.
A number of retired masters, pilots, engineers, divers and even safety inspectors
from Sjöfartsverket came and stayed on an average of two hours. Many came
again on one of the next days. In addition, people calling from all over
the country and also from Finland, offered their knowledge, photos, videos.
The repair manager of Turku Repair Yard, Arvi Puroya, also visited the exhibition
and upon being questioned he stated that
- N&T had not booked any drydocking space for January 1995 for ESTONIA,
- nor had he received any repair specifications.
He also confirmed that the only JAIC member or expert who had ever visited
the yard was Tuomo Karppinen.
One of the visiting retired pilots stated that the traffic controller of
Sandhamn had told him that he had frequently seen ESTONIA passing on her
way out with the visor slightly open. This was mainly during the last weeks
before the casualty.
Another visitor said that the weather statements in the JAIC's Report were
wrong and "selected". The naval architect Per Fagerlund stated that he had
immediately called his friends at SSPA when he heard the nonsense of Karppinen
that the speed had had no relevance for the catastrophe and they had strictly
rejected to have found anything during their tank tests which would support
that and also had made it quite clear that they did not want to be quoted
in this connection.
A visitor, who refused to tell his name, stated that he had been working
for Stolt and had been on the Stolt diving support vessel "STOLT COMEX",
which had been on the ESTONIA position already a few days after the casualty
and which Stolt immediately offered to Sjöfartsverket for a diving survey.
He said that they had made some tests in the early stages and measured radio
activity near the vessel.
In the evening the Swedish JAIC explained their findings and conclusions
to the survivors and relatives. Reportedly Mikael Huss said that the Yard
had not only miscalculated the loads, but had also used the wrong low quality
steel. Ann-Louise Eksborg said that the manual locks were only to be used
if the others were out of order. The expert of DIS, Alve Wendt, put the
question to Mikael Huss, whether they had considered what would happen to
the ramp hinges if the vessel would proceed with fully open ramp and 15
kn speed against head seas? With certainty the hinges would break. M. Huss
replied that this had been neither considered nor calculated, although it
was part of their scenario. Note: See Subchapter 34.10 - The hinges would
break and the ramp fall off.
7th day - 9 December
1997:
About 300 visitors were counted.
8th day - 10 December 1997:
On Breakfast TV 2 Sten-Christer Forsberg - the Technical Director of Nord-ström
& Thulin - was interviewed in connection with the conclusion of the JAIC.
He admitted the general responsibility of N&T for the conditions of the
vessel upon departure from Tallinn with exception of the too weak locks.
They had no knowledge about this hidden defect and said that had they known,
they would have rectified it.
Forsberg, however, was not confronted with the repair specification of the
last Finnish crew from September 1992.
9th day - 11 December
1997
Among the visitors were Ann-Louise Eksborg and Gunnel Göransson from the
Swedish JAIC, who did not contact the guides.
10th day - 12 December
1997
On this day from the Finnish JAIC chairman Kari Lethola with his administration
director and the two managing directors of the Swedish Masters' and Ship
Owners' Association, Chister Lindvall and Per Ringhagen, visited the exhibition.
Also the truck driver Torbjörn Cederkvist appeared and confirmed:
- the burning off of the lug of the starboard side lock;
- the burning off of mating boxes for securing bolts;
- the dismantled flaps between bow ramp and car deck at the port side and
crew members pulling them into position after the ramp had been opened;
- frequent water on car deck at sea, car deck doors open not locked at sea;
- water still streaming out of the closed visor, when he drove from the
vessel in Stockholm;
- the port ramp hinge was broken and the crew was unable to close the ramp
for some hours;
- the vessel returned to Tallinn for repairs on one occasion;
- vessel moored stern first in Tallinn at least 2-3 times.
His statement was taken and he was available whenever required and also
prepared to testify before the public prosecutor.
Note: But was never heard.
11th day - 13 December
1997
Apart from visitors, the survivors Sarah Hedrenius and Pierre Thiger came
and had a close look. Their statements were taken in June already, thus
just some new information was discussed. Both rejected the conclusions of
the JAIC entirely on the basis of their personal experience.
12th day - 14 December
1997
This was the last day and although it was a Sunday some 150 visitors came
until 19.00 hours when the Exhibition was closed.
It has to be assumed that about 2.500 visitors saw the Exhibition this time.
The "Black Book" already offered to the visitors of the first exhibition
for writing down their feelings and impression was put again on the table
near the entrance and was put again on the table near the entrance and many
visitors made again use of it. The entries - translated into English - are
attached as Enclosure
40.4.484.
40.5
"Why did Estonia sink?"
The Engineer Knows the Answer.
Seminar Organised by the
Royal Technical
University (KTH) Stockholm on 01.12.97
This seminar, planned already to take place in June, had to be postponed
due to the delayed publication of the JAIC Report because it was practically
a presentation of work and results of the JAIC. Since Swedish was the main
language the Finnish lawyer of Messrs. Meyer Werft did attend and his report
reads as follows:
"The purpose of the seminar was apparently an attempt to explain for shipbuilders
and engineers the conclusions drawn by the JAIC in its recently published
report.
Among the audience one can find a number of representatives for the shipbuilding
and shipping industry in general, but also some insurers and lawyers.
First speaker was Ms. Ann-Louise Eksborg, recently appointed chairman of
the Swedish national commission.
She discussed the aims and purposes of commission work mainly from an internal
Swedish point of view, emphasizing the importance of the JAIC integrity
especially towards those authorities, who supervise the activities subject
to an investigation, i.e. The Board of Navigation, the Board of Aviation
etc.
She took it for granted, that parties subject to an investigation would
not participate in the work.
On my question whether she thinks these high principles were followed b
the JAIC she immediately grasped the purpose of the question and admitted,
that the Estonian members were not impartial if measured by this standard,
but she explained their presence in the JAIC with the allegation that apparently
all Estonian navigators are or have been employed by the ESCO. There should,
however, not remain any doubt among the audience after this answer, about
the fact that the JAIC was clearly prejudiced.
Tuomo Karppinen then ventured to explain the sequence of events as per the
JAIC's apprehension, first stating that times given have the exactness of
± 2 minutes.
Karppinen then stated that some of the points of time given are more reliable
than others, as these can be explained by means of outside sources; such
are: the time of departure, the time for passing the waypoint, the time
for the first MayDay message and the consequent radio traffic, as well as
the time or the Estonia disappearing from the radar screen of the Mariella.
Karppinen, however, started the summing up of the events with the "bang"
heard by the AB, and after that, in my opinion, all points of time are in
fact based on the indications given by crew members, not by the passengers.
Accordingly the JAIC is, albeit the point of time cannot be verified, of
the opinion that the events started at 00.55, that the visor locking devices
were broken between 1.05 and 1.10, and that the visor fell off at 1.15 with
immediate list as a consequence.
From the evidence recorded it is apparent, that the JAIC is not, as said,
attaching any greater significance to statements by passengers.
Karppinen also described the maneuvering of the vessel at this period of
time, i.e. the total lack of maneuvers with the exception of the fact that
the speed was turned down when the vessel already had a severe list.
A member of the audience very in detail expressed his opinions how a vessel
in a situation like this should be maneuvered, by reducing speed, turning
the stem/stern against the sea etc., to which Karppinen responded that obviously,
if the vessel had been turned such that the angle to the sea would have
been abt. 90 degrees, the water could not have entered through the ramp
at all and the vessel would have been saved. Karppinen had obvious difficulties
with explaining to the audience why the JAIC did not clearly say this in
its report.
After this discussion, there could not be any uncertainty in respect of
the fact that grave errors by the crew significantly contributed to, if
not even caused the accident."
In respect of Rahka's paper, as far as I could understand, the difference
in opinions between the yard/the JAIC viz. the strength calculations regarding
the visor locks is now being explained with reference to a turning moment
caused by the impact of the seas coming from abt 30 degrees to port from
the vessel's line of heading.
Rahka emphasized a number of times that irrespective of how the calculations
are made ,the locks were too weak anyhow.
Rahka denied, that the JAIC would have said that the speed was of no significance
at all; he (and Karppinen) stated, that a speed below 10 kn, would have
nullified the risk of visor failure, but the point is that speed impact
is linear while wave impact is proportional.
As to Huss's two papers, there was nothing extraordinary to be mentioned.
Fransson discussed the Solas requirements as to the placing of the collision
bulkhead extension, and concluded that the solution onboard Estonia was
in conflict with the applicable rules.
Much was discussed about the original approval by the FBN and subsequent
approvals by the BV on behalf of the Estonian BN. I did ask Fransson what
his opinion is about the alleged seaworthiness of the vessel at departure
from Tallinn, if the vessel de facto was in breach of the Solas requirements,
and he transferred the question to the JAIC representatives, of which Karppinen
ventured to answer. He said, that the seaworthiness statement in the report
is to be understood as a legal and formal one only! This answer no doubt
is the more peculiar, as the breach of the Solas requirements clearly is
a "formal and legal" failure, as the vessel no doubt had valid certificates.
In the end I asked Karppinen about the repair list from the Turku repairyard,
and the answer was that in fact this was not a quote, but a summary of the
items the deck officers had forwarded as a "wish", and Karppinen's rather
unfounded conclusion was that actually there were nothing at that time to
remark about the locks/hinges/packings!
He had no proper answer to the question that the list no doubt also comprised
items which the JAIC has chosen to mention as unrepaired, that is the packings.
How the JAIC has arrived at the conclusion that the remaining items were
not of importance or, as he is saying, did not exist, is unclear.
He did after the seminar take great pain in explaining to me that the list
is not an usual "to do" list, but something else, which I refused to understand.
As such the seminar was interesting, but too comprehensive with too little
space for adequate questions; too much was packed in the program. Another
problem was the heterogeneous composition of the audience, a number of participants
with knowledge based on media information only took up the time with self-evident
questions.
I met afterwards Karppinen and Rahka on the airport, and we had a pleasant
discussion waiting for the much delayed plane.
I told them that my opinion is, that they have an uphill task in convincing
the interested parties in respect of the correctness of their conclusions,
as the JAIC in the eyes of any outsider is prejudiced, and as some conclusions,
such as the role of the crew, are obviously quite wrong. The two gentlemen
admitted the difficulties with the Estonians once more, but emphasized of
course the value of their own contributions. They welcomed me or my prospective
principals to study the background material now available at the VTT."
Nothing more remains to be done but to compare the investigation results
of the JAIC with those of this 'Group of Experts', which is done in Chapter
41.


{{ subject }}
Message:
{% include "randomcab/home/mail/email.txt" %}
Do you also want to send a RandomCab: click
here


rsh port 514 open
Rsh Enumeration
rsh host [-l username] [-n] [-d] [-k realm] [-f | -F] [-x] [-PN | -PO] command
Rsh Brute Force
rsh-grind
Hydra
medusa


The new token on the block (Chain) ;)
Nora token (NRT) is used to power the Nora AI
Nora comes with multiple features for all to use. This includes Nora Wallet , Nora Segmenting Power Up System AKA Vanilla Sherbert 3.0 , Pipeline Terminal System,Nora AI . *Please note that some of these technologies are under development
Select


{% extends base_template_path %} {%- block page_content -%}
Error 404
The page you were looking for doesn't exist. You may have mistyped the address or the page may have moved.
Back to homepage


Every OBO ontology contains a set of namespaces. Terms and relationships in the ontology can be assigned to one of the namespaces in that set (see An Introduction to OBO Ontologies, Text Editing, and The Parent Plugin for more information on how to assign entities to namespaces).
The built-in Namespace Manager Plugin allows users to manage the set of available namespaces. To access the Namespace Manager Plugin, choose "Namespace Manager Plugin" from the "Plugin" menu:
The Namespace Manager Plugin window will appear:
Any changes made in the Namespace Manager Plugin are not saved until the "Save Changes" button is clicked. If changes are made and the window is closed, the changes will not be saved. To revert to the last committed version of the namespace set, click the "Revert" button.
To edit an existing namespace, click the namespace to edit in the list on the left. The namespace editor panel will appear:
Namespaces have only one editable attribute: their id. To change the namespace id, click the namespace id in the text field and type a new id.
To delete an existing namespace, click the namespace to delete in the list on the left. Click the Del button to remove the namespace.
Note that a namespace that is assigned to a term or relationship cannot be deleted. If a namespace is deleted that is still in use, a warning will appear when the "Save Changes" button is pressed. If a namespace must be deleted, first search the ontology to make sure that the namespace is not in use.
To add a new namespace, click the "Add" button. A new namespace will be created with the default id "<new namespace id>":
Edit the id as described above.


--- layout: default title: ICTE'17 - Results meta: The search results for the conference. keyword: traffic engineering, transportation engineering, traffic engineering conference, transportation engineering conference, civil engineering conference, public transportation conference, transportation safety conference, public transportation, transportation safety ---
Search Results


AuthorSynth is a prototype framework for neuroscience researchers to see and find collaborators. It is a network to show actual collaborations based on co-publication, and a brain lattice to find researchers based on behavioral terms studied. Both of these visualizations lay on top of a database of single author contributions. Read more about the network, the brain lattice, or the single author contributions.
The network shows neuroscience author collaboration based on publications in the NeuroSynth database for PIs, defined by being last author on a paper and having at least two publications. Links are defined between PIs with at least 2 publications together. Coloring of the network is determined by similarity based on comparison of actual activation reports (x y z voxel values). The threshold of this coloring can be adjusted to generate more or fewer groups. An actual link represents a real collaboration, while similar coloring represents potential collaborations. Clicking on a link navigates to the single author page.
The brain lattice is a novel visualization strategy, a self-organizing map (SOM), that maps neuroscience author activation reports to 525 behaviorally relevant terms. You can click on a node in the map to find researchers with published regional activation reports relevant to the term. You will notice that "like" terms cluster together in the map, and the coloring is an arbitrary grouping to show this similarity.
The single author contribution pages are reachable by clicking on a behavioral term in the brain lattice, or searching for an author in network and clicking on the node. The pages include a single author brain lattice, a ranked collaborator list, and detail about publications and coordinates in the database.
The single author brain lattice is equivalent in structure to the portal brain lattice, however the coloring of this map represents the similarity of the author's publications to each node, with darker colors corresponding to more highly similar. For example, a researcher with published coordinates relevant to brain areas associated with "motor" in the NeuroSynth database will have "hot" spots on the map around "motor." The map as a whole represents the single researcher's contributions. You can access these pages through the author search page, by clicking a node on the collaborator network, or searching for a behavioral term on the brain lattice.
The ranked list of similar authors is determined by finding authors with similar brain lattices, and therefore similar published work (a complete summary of our methods will be provided in a publication). The author in question is at the top of the list, followed by a list of other authors in the database ordered by most to least similar. Next to each author name is a circle plotted along an x-axis that represents the similarity score: circles farther to the right correspond to lower similarity scores. The circles are colored red (indicative of a collaboration), and orange (indicative of no collaboration) so that the user of the interface can quickly assess if the author in question is collaborating with researchers with similar published work. A user of the interface can click on any of these circles to view the “Single Author View” for the author in question.
The “Single Author View” includes a tab for the author’s publications, including titles, full lists of authors, and links to the articles themselves.
The page also includes a 3D plot of the activation coordinates described in those papers that were used in the analysis.


AchieveLife is an mobile app meant to gamify your life.
Welcome to the AchieveLife product page!
Overview: It tracks your everyday activities, and rewards you for doing those activities. We want you to be the best you by being motivated to do activities that will better your social, fitness, intelligence, and financial affairs. Be the best at doing the things you do everyday!
You can download AchieveLife right here!
Note: AchieveLife is only supported by API22 (If you can only see one marker, you are using an incompatible API)
Download Link: AchieveLife
Public Repository: https://github.com/achievelife/android
© Copyright 2016. AchieveLife |
Created and maintained by AchieveLife Team |


Before Change
if dtype is None:
dtype = floatx()
tf_dtype = tf.as_dtype(dtype)
if seed is None:
// ensure that randomness is conditioned by the Numpy RNG
seed = np.random.randint(10e8)
value = tf.random_uniform_initializer(
After Change
if seed is None:
// ensure that randomness is conditioned by the Numpy RNG
seed = np.random.randint(10e8)
with tf_ops.init_scope():
value = tf.random_uniform_initializer(
low, high, dtype=dtype, seed=seed)(shape)
return variable(value, dtype=dtype, name=name)
def random_normal_variable(shape, mean, scale, dtype=None,
name=None, seed=None):
Instantiates a variable with values drawn from a normal distribution.


You probably have no idea what I'm even thinking at the word 'starslam', so I will start there.
Starslam was an experiment in Node.js , websockets , html5 canvases , and last but not least Amazon Web Services . It also happened to be a game. I wasn't exactly sure about what I was creating when I got started - but the end result was an idea. That idea was of completely synchronous, unhackable games, built on html5 canvas'. The state (collision and physics) would be handled by the server, and the client would simply report the user inputs.
But this blog is about what I learned in finding that idea. In the order I learned it-ish.
I knew I was going to start with the canvas - because the canvas is cool. I also sort of started with my webserver because for some sadistic reason I enjoy modifying local files and checking how they run/look as served by the server (instead of simply dropping them into a browser). This wasn't such a great approach I learned later, but it did work out since there really weren't many pages needed for Starslam.
So. The Html5 Canvas . The canvas has been around for quite some time - longer than I have been a developer (currently in 2014), and yet so few people seem to dive into them - probably since they don't make a huge deal in corporate biz logic. Fewer still seem to understand much about their basic 2D graphics, although there are some useful scraps in most google search resources. For me I found I wasn't all that interested in a lot of the functionality, as I could do what I wanted with some very simple canvas tools.
The trick for me was remembering the
identity matrix
and the
rotation matrix
. In the world of canvas, you have the power to transform your sense of the world relative to a 3x3 matrix. This is much like turning your sense of the world upside-down -or any other angle- and continuing working, but relative to what you now see. You might wonder why a 3x3 matrix is involved in a 2 dimensional canvas, and you aren't crazy. The reason is that a 2D canvas is a subset of 3D (naturally). In the
api's setTransform function
, the bottom row of the 3x3 matrix is ignored, and the rightmost column of the 3x3 matrix acts as an offset for the context:
1 0 1 0 1 1 -> identity matrix with offset X+1 and Y+1, 0 0 1 setTransform(1,0,0,1,1,1)
a b e c d f -> making sense of the above : setTransform(a,b,c,d,e,f) - this guy 0 0 1 ignores the bottom row
Then, I would draw something onto a second canvas using beginPath , closePath , stroke , and fill , subsequently using drawImage to draw that image onto the display canvas. I found out it was easy conceptually and not so bad speedwise. The source is on github if you want to take a closer look.
Node.js routing & state management. I used two servers to handle everything - 1 for the static html, and 1 for the websockets and game state. There wasn't anything too special about what I was doing here, but it was quite a learning experience in how not to organize things. I did not encapsulate functionality well, and I did not plan out my states very well either, so the result was buggy at best. I don't regret doing it the way I did though because I think everyone needs to run into their own messes every now and then. I also used oAuth without learning how it worked first.... The moral of the story here is that a lack of planning leads to time-waste in debugging and confusion later.
Game stuff. I never really programmed physics, but I did program movement controllers and collision events. I handled collision on a tick by tick basis, where a 500x500 matrix held each pixel in the game, and an object owned pixels on the grid or attempted to take them which would consequently result in a collision when a pixel was taken. This was slow and ugly, but it worked. Then the user events came to be put into a queue which eventually affected velocity/accel/firing properties of the user. This was processed each game-tick (approx 40ms interval).
I wish I could have kept this on AWS eternally, but alas, that costs money. I also learned a lot about domain name pointing, working behind a load balancer on aws, and getting an SSL cert. Each of these deserves their own blogs, and needs explaining I can't find a link for.
I hope this blog was useful. If you found a mistake please email me , also go for it if you would like something added.


I'm A Celebrity screaming fight ends in tears as Ian Wright faces 'bullying' claims in Andrew Maxwell row
A heated argument over 'sexist' decisions descended into chaos when tearful Andrew Maxwell accused shouting Ian Wright of 'singling him out' on tonight's I'm A Celebrity
by Irishmirror.ieThe I'm A Celebrity camp was embroiled in another massive fight on Sunday night's show - with Ian Wright facing 'bullying' claims.
A heated argument over 'sexist' decisions descended into chaos when tearful Andrew Maxwell accused shouting Ian Wright of purposefully 'singling him out'.
It all started with a tense debate over who who should get roast dinners ahead of an upcoming trial - with Kate Garraway confronting James Haskell over "chivalrous nonsense".
The Good Morning Britain host snapped back at the camp leader over his insistence that women should always go first before the men.
As the camp began to clash, comedian Andrew said that he did not like the way former football Ian kept speaking to him.
Frustrated Andrew, 45, then stood up and said: “You keep shouting at me Ian.”
Ian, 56, looked at him and asked: “Who is shouting, when did I shout?”
When Andrew told him it was "just then", Ian claimed: “I wasn’t even talking to you, what did I say?”
In the Bush Telegraph, Roman Kemp admitted he was a little bit lost and did not understand how the situation had happened.
Back in camp, Ian told Andrew: "What are you talking about, I didn’t shout at you."
When Andrew asked why Ian was singling him out, Ian firmly denied that he was and asked the comedian to repeat what he had supposedly said.
As things got heated, Andrew claimed he could not remember and was tired so walked to his bed.
Ian was not happy with the situation, but Andrew then walked back to the football pundit and opened his arms to make up.
Andrew said: “I’m sorry, I’m really tired, I don’t know, I’m really tired."
When Andrew started to get emotional in front of Ian, the former Arsenal striker said: “Don’t cry.”
Close to tears, apologetic Andrew confessed: "I’m not going to cry, I’m sorry."
A tired and emotional Ian and Andrew both hugged each other as they settled their differences.
“You’re my pal and I’m just really sensitive," admitted Andrew.
When Ian asked what was up with him, Andrew confessed he was just tired.
Ian replied: “We both are dude. We’re both hungry, we’re both tired.”
Andrew said: “I know, I know, I’m sorry.”
They both emotionally hugged each other again and the tension was relieved in camp.
* I'm A Celebrity...Get Me Out Of Here! airs on ITV at 9pm


Fan simulator is fully compatible with Bitmain with the Antminer S9i, L3 , L3 , L3, D3, X3, T9 , T9, A3, Z9 Mini, Z9, S9, DR3, and WhatsMiner M1 (M3X) series. The Fan simulator contains a printed circuit board (PCB) with fan connector and all component for ready to work.


Humanized Data
File
Size
Size (bytes)
Uploaded
{{row.name}}
{{row.filesize | humanizeFilesize}}
{{row.filesize | humanizeInt}}
{{row.uploaded | humanizeRelativeTime}}
Raw Data
{{data|json}}


from HarvardX
In this week, we used C.
A simple program that prompt user for name and say hello to user.
$ make hello
$ ./hello
What is your name?
Brian
hello, Brian
A program to recreate Nintendo’s Super Mario Brothers pyramids in C, albeit in text, using hashes (#) for bricks, a la the below. Each hash is a bit taller than it is wide, so the pyramids themselves are also be taller than they are wide.
$ ./mario
Height: 4
# #
## ##
### ###
#### ####
The program prompts user for a number and uses Luhn’s Algorithm to calculate the checksum.
Then it checks, with the length and starting digits, if it's a valid number.
The only output of the program is the result: AMEX
, MASTERCARD
,
VISA
or INVALID
.
$ ./credit
Number:<PHONE_NUMBER>000014
VISA


---
layout: post
title: LinuxConf Europe 2007
date: '2007-09-01T07:50:00.000+02:00'
author: Steven Van Acker
tags:
modified_time: '2008-01-20T22:03:32.626+01:00'
blogger_id: tag:blogger.com,1999:blog-5513234137363262204.post-2285641333640027442
blogger_orig_url: http://www.singularity.be/2007/08/linuxconf-europe-2007.html
---
It's 5.45am and I'm about ready to depart to Cambridge UK where LinuxConf.eu 2007 starts tomorrow morning. If everything goes as planned, we should arrive in Cambridge around mid-day today. My bus is set to depart at about 7am to the trainstation. From there, I take the train to Brussels-south where the EuroStar train takes us to London Waterloo (departure 8.59, half hour checkin time). Then a metro to London King's Cross and from there a train to Cambridge.
Let's hope all of this makes sense when we're underway...
On a sidenote, I'm curious to see whether or not Belgium will still be here when I get back on september 5th, or whether it will have been ripped in 2 by our politicians... :)


Results-oriented engineer with considerable training and enterprise experience
in
design, layout and in all stages of design, coding, and testing of software,
applications,
and in the formation, planning, and implementation. Well-versed in technology
and
writing code to create systems that are reliable and user-friendly.
2020 August-Date
Introduction to Web Development
(html,Css and Javascript
Moringa School
August-December 2016:
Internet Applications Programming
(HTMLand CSS)
Karatina University.
2012-2015:
Kenya Certificate of Secondary Education (KCSE),
Chebunyo Boys High School,
Mean Grade: B+(plus).


Chennai rains: City to receive rains for next few days
The resultant rainfall is expected to boost groundwater levels in Chennai.
by Express Web DeskThe wet spell in Chennai is likely to continue for the next few days as more rainfall is expected, the Regional Meteorological Centre (RMC) said.
The RMC said that Chennai, districts in coastal Tamil Nadu and parts of neighbouring Puducherry will receive moderate to heavy rainfall accompanied by thunderstorms from Monday due to an easterly trough in Tamil Nadu. Districts in southern Tamil Nadu are expected to receive more rainfall than the northern region of the State.
A heavy rainfall warning has been issued to the districts of Ramanathapuram, Kanyakumari, Thoothukudi and Tirunelveli from Monday.
WATCH | Parts of city to receive rainfall
Chennai received widespread showers since Saturday morning, with waterlogging being reported in parts of the city. The RMC had recorded 5 cm of rainfall at Sholinganallur, 4 cm at Anna University and 1 cm at the Director General of Police (DGP) office in Chennai on Saturday.


Angular Evergreen
A tool to help developers keep their Angular projects evergreen with periodic update checks and automatic upgrades
Install
This page has moved to
here
.


@wdom take over the world #evil
You will be using your #evil influence to take over the world (project tagged @wdom). No time has been specified, so use "Finish" to mark as complete.
You will be using your #evil influence to take over the world (project tagged @wdom). No time has been specified, so use "Finish" to mark as complete.
You will be spending 1 hour meeting with the suppliers of the evil laser.
You intend to spend 15 minutes speaking with your evil minions. When done, use "Finish" to mark as complete.
You spent 1 hour killing Mr Bond.
You have spent 5 minutes fleeing to your next evil lair, and are still in the process of doing so. When done, use "Finish" to mark as complete.


Constructor
new Keyframe(data)
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Data from Blender. |
- Source:
Members
(static, readonly) Easing :number
FCurve easing types.
Type:
- number
Properties:
| Name | Type | Description |
|---|---|---|
AUTO |
number | Automatic easing. |
IN |
number | Starts slow. |
OUT |
number | Ends slow. |
IN_OUT |
number | Starts and ends slow. |
- Source:
(static, readonly) Interpolation :number
FCurve interpolation types, between two keyframes.
Type:
- number
Properties:
| Name | Type | Description |
|---|---|---|
CONSTANT |
number | No interpolation, value gets held. |
LINEAR |
number | Straight-line interpolation. |
BEZIER |
number | Smooth interpolation. |
BACK |
number | Cubic easing with overshoot and settle. |
BOUNCE |
number | Exponentially decaying parabolic bounce. |
CIRCULAR |
number | Circular easing. |
CUBIC |
number | Cubic easing. |
ELASTIC |
number | Exponentially decaying sine wave. |
EXPONENTIAL |
number | Exponential easing. |
QUADRATIC |
number | Quadratic easing. |
QUARTIC |
number | Quartic easing. |
QUINTIC |
number | Quintic easing. |
SINUSOIDAL |
number | Sinusoidal easing. |
- Source:
amplitude :number
Amplitude (for elastic interpolation).
Type:
- number
- Source:
easing :Keyframe.Easing
Easing type.
Type:
- Source:
interpolation :Keyframe.Interpolation
Interpolation type.
Type:
- Source:
leftTime :number
Left handle's time.
Type:
- number
- Source:
leftValue :number
Left handle's value.
Type:
- number
- Source:
overshoot :number
Overshoot (for back interpolation).
Type:
- number
- Source:
period :number
Period (for elastic interpolation).
Type:
- number
- Source:
rightTime :number
Right handle's time.
Type:
- number
- Source:
rightValue :number
Right handle's value.
Type:
- number
- Source:
time :number
Time.
Type:
- number
- Source:
value :number
Value.
Type:
- number
- Source:


Next
Rewards
×
Settings
×
Select Camera
Play sound


.. -- mode: rst; coding: utf-8 --
.. image:: pypiserver_logo.png :width: 300 px :align: center
pypiserver - minimal PyPI server for use with pip/easy_install
|pypi-ver| |travis-status| |dependencies| |downloads-count| |python-ver| \ |proj-license|
:Version: 1.2.1.dev0 :Date: 2016-XX-XX :Source: https://github.com/pypiserver/pypiserver :PyPI: https://pypi.python.org/pypi/pypiserver :Travis: https://travis-ci.org/pypiserver/pypiserver :Maintainers: Kostis Anagnostopoulos<EMAIL_ADDRESS>Matthew Planchard<EMAIL_ADDRESS>:License: zlib/libpng + MIT
pypiserver is a minimal PyPI_ compatible server for pip or easy_install.
It is based on bottle_ and serves packages from regular directories.
Wheels, bdists, eggs and accompanying PGP-signatures can be uploaded
either with pip, setuptools, twine
, pypi-uploader
, or simply copied
with scp.
.. contents:: Table of Contents :backlinks: top
Quickstart: Installation and Usage
pypiserver > 1.2.x
works with python 2.7
and 3.3+
or pypy.
Older python-versions may still work, but they are not tested.
For legacy python versions, use pypiserver-1.1.x
series.
.. Tip::
The commands below work on a unix-like operating system with a posix shell.
The '~'
character expands to user's home directory.
If you're using Windows, you'll have to use their "Windows counterparts". The same is true for the rest of this documentation.
-
Install pypiserver with this command::
pip install pypiserver ## Or: pypiserver[passlib,watchdog] mkdir ~/packages ## Copy packages into this directory.
See also
Alternative Installation methods
_. -
Copy some packages into your
~/packages
folder and then get your pypiserver up and running::pypi-server -p 8080 ~/packages & ## Will listen to all IPs.
-
From the client computer, type this::
Download and Install hosted packages.pip install --extra-index-url http://localhost:8080/simple/ ...
Search hosted packagespip search --index http://localhost:8080/simple/ ...
See also
Client-side configurations
_ for avoiding tedious typing. -
Enter
pypi-server -h
in the cmd-line to print a detailed usage message::pypi-server [OPTIONS] [PACKAGES_DIRECTORY...] start PyPI compatible package server serving packages from PACKAGES_DIRECTORY. If PACKAGES_DIRECTORY is not given on the command line, it uses the default ~/packages. pypiserver scans this directory recursively for packages. It skips packages and directories starting with a dot. Multiple package directories can be specified.
pypi-server understands the following options:
-p, --port PORT listen on port PORT (default: 8080)
-i, --interface INTERFACE listen on interface INTERFACE (default: <IP_ADDRESS>, any interface)
-a, --authenticate (UPDATE|download|list), ... comma-separated list of (case-insensitive) actions to authenticate Use '.' or '' for empty. Requires to have set the password (-P option). For example to password-protect package downloads (in addition to uploads) while leaving listings public, give: -P foo/htpasswd.txt -a update,download To drop all authentications, use: -P . -a . Note that when uploads are not protected, the
register
command is not necessary, but~/.pypirc
still need username and password fields, even if bogus. By default, only 'update' is password-protected.-P, --passwords PASSWORD_FILE use apache htpasswd file PASSWORD_FILE to set usernames & passwords when authenticating certain actions (see -a option). If you want to allow un-authorized access, set this option and -a explicitly to empty (either '.' or'').
--disable-fallback disable redirect to real PyPI index for packages not found in the local index
--fallback-url FALLBACK_URL for packages not found in the local index, this URL will be used to redirect to (default: http://pypi.python.org/simple)
--server METHOD use METHOD to run the server. Valid values include paste, cherrypy, twisted, gunicorn, gevent, wsgiref, auto. The default is to use "auto" which chooses one of paste, cherrypy, twisted or wsgiref.
-r, --root PACKAGES_DIRECTORY [deprecated] serve packages from PACKAGES_DIRECTORY
-o, --overwrite allow overwriting existing package files
--hash-algo ALGO any
hashlib
available algo used as fragments on package links. Set one of (0, no, off, false) to disabled it. (default: md5)--welcome HTML_FILE uses the ASCII contents of HTML_FILE as welcome message response.
-v enable INFO logging; repeat for more verbosity.
--log-conf read logging configuration from FILE. By default, configuration is read from
log.conf
if found in server's dir.--log-file write logging info into this FILE.
--log-frmt the logging format-string. (see
logging.LogRecord
class from standard python library) [Default: %(asctime)s|%(name)s|%(levelname)s|%(thread)d|%(message)s]--log-req-frmt FORMAT a format-string selecting Http-Request properties to log; set to '%s' to see them all. [Default: %(bottle.request)s]
--log-res-frmt FORMAT a format-string selecting Http-Response properties to log; set to '%s' to see them all. [Default: %(status)s]
--log-err-frmt FORMAT a format-string selecting Http-Error properties to log; set to '%s' to see them all. [Default: %(body)s: %(exception)s \n%(traceback)s]
pypi-server -h pypi-server --help show this help message
pypi-server --version show pypi-server's version
pypi-server -U [OPTIONS] [PACKAGES_DIRECTORY...] update packages in PACKAGES_DIRECTORY. This command searches pypi.python.org for updates and shows a pip command line which updates the package.
The following additional options can be specified with -U:
-x execute the pip commands instead of only showing them
-d DOWNLOAD_DIRECTORY download package updates to this directory. The default is to use the directory which contains the latest version of the package to be updated.
-u allow updating to unstable version (alpha, beta, rc, dev versions)
Visit https://github.com/pypiserver/pypiserver for more information.
Client-side Configurations
Always specifying the the pypi url on the command line is a bit
cumbersome. Since pypiserver redirects pip/easy_install
to the
pypi.python.org
index if it doesn't have a requested package, it's a
good idea to configure them to always use your local pypi index.
Configuring pip
For pip
command this can be done by setting the environment variable
PIP_EXTRA_INDEX_URL
in your .bashr/.profile/.zshrc
::
export PIP_EXTRA_INDEX_URL=http://localhost:8080/simple/
or by adding the following lines to ~/.pip/pip.conf
::
[global] extra-index-url = http://localhost:8080/simple/
.. Note::
If you have installed pypiserver on a remote url without https
you wil receive an "untrusted" warning from pip, urging you to append
the --trusted-host
option. You can also include this option permanently
in your configuration-files or environment variables.
Configuring easy_install
For easy_install
command you may set the following configuration in
~/.pydistutils.cfg
::
[easy_install] index_url = http://localhost:8080/simple/
Uploading Packages Remotely
Instead of copying packages directly to the server's folder (i.e. with scp
),
you may use python tools for the task, e.g. python setup.py upload
.
In that case, pypiserver is responsible for authenticating the upload-requests.
.. Note:: We strongly advise to password-protected your uploads!
It is possible to disable authentication for uploads (e.g. in intranets).
To avoid lazy security decisions, read help for -P
and -a
options.
Apache-like authentication (htpasswd
)
. First make sure you have the passlib module installed (note that
passlib>=1.6
is required), which is needed for parsing the Apache
htpasswd file specified by the -P
, --passwords
option
(see next steps)::
pip install passlib
. Create the Apache htpasswd file with at least one user/password pair
with this command (you'll be prompted for a password)::
htpasswd -sc htpasswd.txt <some_username>
.. Tip:: Read this SO question for running htpasswd
cmd
under Windows:
http://serverfault.com/questions/152950/how-to-create-and-edit-htaccess-and-htpasswd-locally-on-my-computer-and-then-u
or if you have bogus passwords that you don't care because they are for
an internal service (which is still "bad", from a security prespective...)
you may use this public service:
http://www.htaccesstools.com/htpasswd-generator/
.. Tip:: When accessing pypiserver via the api, alternate authentication
methods are available via the auther
config flag. Any callable
returning a boolean can be passed through to the pypiserver config in
order to provide custom authentication. For example, to configure
pypiserver to authenticate using the python-pam
_::
import pam
pypiserver.default_config(auther=pam.authenticate)
Please see `Using Ad-hoc authentication providers`_ for more information.
. You need to restart the server with the -P
option only once
(but user/password pairs can later be added or updated on the fly)::
./pypi-server -p 8080 -P htpasswd.txt ~/packages &
Upload with setuptools
. On client-side, edit or create a ~/.pypirc
file with a similar content::
[distutils]
index-servers =
pypi
local
[pypi]
username:<your_pypi_username>
password:<your_pypi_passwd>
[local]
repository: http://localhost:8080
username: <some_username>
password: <some_passwd>
. Then from within the directory of the python-project you wish to upload,
issue this command::
python setup.py sdist upload -r local
Upload with twine
_
To avoid storing you passwords on disk, in clear text, you may either:
-
use the
register
setuptools's command with the-r
option, like that::python setup.py sdist register -r local upload -r local
-
use
twine
_ library, which breaks the procedure in two steps. In addition, it supports signing your files with PGP-Signatures and uploading the generated.asc
files to pypiserver::twine upload -r local --sign -identity user_name ./foo-1.zip
Upload with pypi-uploader
_
You can also upload packages using pypi-uploader
_, which
obviates the need to download packages locally prior to uploading them to
pypiserver. You can install it with pip install pypi-uploader
, and
assuming you have a pypi_local
source set up in your ~/.pypirc
,
use it like this::
pypiupload packages mock==1.0.1 requests==2.2.1 -i pypi_local
pypiupload requirements requirements.txt -i pypi_local
Alternative Installation methods
When trying the methods below, first use the following command to check whether previous versions of pypiserver already exist, and (optionally) uninstall them::
## VERSION-CHECK: Fails if not installed. pypi-server --version
## UNINSTALL: Invoke again untill it fails. pip uninstall pypiserver
Installing the very latest version
In case the latest version in pypi is a pre-release, you have to use
pip's --pre
option. And to update an existing installation combine it
with --ignore-installed
::
pip install pypiserver --pre -I
You can even install the latest pypiserver directly from github with the
following command, assuming you have git installed on your PATH
::
pip install git+git://github.com/pypiserver/pypiserver.git
Installing it as standalone script
The git repository contains a pypi-server-standalone.py
script,
which is a single python file that can be executed without any other
dependencies.
Run the following commands to download the script with wget
::
wget https://raw.github.com/pypiserver/pypiserver/standalone/pypi-server-standalone.py chmod +x pypi-server-standalone.py
or with curl
::
curl -O https://raw.github.com/pypiserver/pypiserver/standalone/pypi-server-standalone.py chmod +x pypi-server-standalone.py
You can then start-up the server with::
./pypi-server-standalone.py
Feel free to rename the script and move it into your $PATH
.
Running on heroku/dotcloud
https://github.com/dexterous/pypiserver-on-the-cloud contains instructions on how to run pypiserver on one of the supported cloud service providers.
Recipes
Managing the package directory
The pypi-server
command has the -U
option that searches for updates of
available packages. It scans the package directory for available
packages and searches on pypi.python.org for updates. Without further
options pypi-server -U
will just print a list of commands which must
be run in order to get the latest version of each package. Output
looks like::
$ ./pypi-server -U
checking 106 packages for newer version
.........u.e...........e..u.............
.....e..............................e...
..........................
no releases found on pypi for PyXML, Pymacs, mercurial, setuptools
# update raven from 1.4.3 to 1.4.4
pip -q install --no-deps --extra-index-url http://pypi.python.org/simple -d /home/ralf/packages/mirror raven==1.4.4
# update greenlet from 0.3.3 to 0.3.4
pip -q install --no-deps --extra-index-url http://pypi.python.org/simple -d /home/ralf/packages/mirror greenlet==0.3.4
It first prints for each package a single character after checking the
available versions on pypi. A dot(.
) means the package is up-to-date, 'u'
means the package can be updated and 'e'
means the list of releases on
pypi is empty. After that it shows a pip command line which can be used
to update a one package. Either copy and paste that or run
pypi-server -Ux
in order to really execute those commands. You need
to have pip installed for that to work however.
Specifying an additional -u
option will also allow alpha, beta and
release candidates to be downloaded. Without this option these
releases won't be considered.
Serving thousands of packages
By default, pypiserver scans the entire packages directory each time an incoming HTTP request occurs. This isn't a problem for a small number of packages, but causes noticeable slow-downs when serving thousands of packages.
If you run into this problem, significant speedups can be gained by enabling
pypiserver's directory caching functionality. The only requirement is to
install the watchdog
package, or it can be installed during pypiserver
installation, by specifying the cache
extras option::
pip install pypiserver[cache]
If you are using a static webserver such as Apache or nginx as a reverse-proxy for pypiserver, additional speedup can be gained by directly serving the packages directory:
For instance, in nginx you may adding the following config to serve packages-directly directly (take care not to expose "sensitive" files)::
location /packages/ {
root /path/to/packages/parentdir;
}
If you have packages that are very large, you may find it helpful to
disable hashing of files (set --hash-algo=off
, or hash_algo=None
when
using wsgi).
Managing Automated Startup
There are a variety of options for handling the automated starting of pypiserver upon system startup. Two of the most common are systemd and supervisor.
Running as a systemd service
*systemd* is installed by default on most modern Linux systems and as such,
it is an excellent option for managing the pypiserver process. An example
config file for ``systemd`` can be seen below::
[Unit]
Description=A minimal PyPI server for use with pip/easy_install.
After=network.target
[Service]
Type=simple
# systemd requires absolute path here too.
PIDFile=/var/run/pypiserver.pid
User=www-data
Group=www-data
ExecStart=/usr/local/bin/pypi-server -p 8080 -a update,download --log-file /var/log/pypiserver.log --P /etc/nginx/.htpasswd /var/www/pypi
ExecStop=/bin/kill -TERM $MAINPID
ExecReload=/bin/kill -HUP $MAINPID
Restart=always
WorkingDirectory=/var/www/pypi
TimeoutStartSec=3
RestartSec=5
[Install]
WantedBy=multi-user.target
Adjusting the paths and adding this file as ``pypiserver.service`` into your
``systemd/system`` directory will allow management of the pypiserver process with
``systemctl``, e.g. ``systemctl start pypiserver``.
More useful information about *systemd* can be found at
https://www.digitalocean.com/community/tutorials/how-to-use-systemctl-to-manage-systemd-services-and-units
Launching through *supervisor*
supervisor <http://supervisord.org/>
_ has the benefit of being a pure python
package and as such, it provides excellent cross-platform support for process
management. An example configuration file for supervisor
is given below::
[program:pypi]
command=/home/pypi/pypi-venv/bin/pypi-server -p 7001 -P /home/pypi/.htaccess /home/pypi/packages
directory=/home/pypi
user=pypi
autostart=true
autorestart=true
stderr_logfile=/var/log/pypiserver.err.log
stdout_logfile=/var/log/pypiserver.out.log
From there, the process can be managed via supervisord
using supervisorctl
.
Using a different WSGI-server
The bottle web-server which supports many WSGI-servers, among others, paste, cherrypy, twisted and wsgiref (part of python); you select them using the
--server
flag.-
You may view all supported WSGI servers using the following interactive code::
from pypiserver import bottle list(bottle.server_names.keys()) ['cgi', 'gunicorn', 'cherrypy', 'eventlet', 'tornado', 'geventSocketIO', 'rocket', 'diesel', 'twisted', 'wsgiref', 'fapws3', 'bjoern', 'gevent', 'meinheld', 'auto', 'aiohttp', 'flup', 'gae', 'paste', 'waitress']
If none of the above servers matches your needs, invoke just the
pypiserver:app()
method which returns the internal WSGI-app WITHOUT starting-up a server - you may then send it to any WSGI-server you like. Read also theUtilizing the API
_ section.Some examples are given below - you may find more details in
bottle site <http://bottlepy.org/docs/dev/deployment.html#switching-the-server-backend>
_.
Apache (mod_wsgi)
To use your *Apache2* with *pypiserver*, prefer to utilize *mod_wsgi* as
explained in `bottle's documentation <http://bottlepy.org/docs/dev/deployment.html#apache-mod-wsgi>`_.
.. Note::
If you choose instead to go with *mod_proxy*, mind that you may bump into problems
with the prefix-path (see `#155 <https://github.com/pypiserver/pypiserver/issues/155>`_).
1. Adapt and place the following *Apache* configuration either into top-level scope,
or inside some ``<VirtualHost>`` (contributed by Thomas Waldmann)::
WSGIScriptAlias / /yoursite/wsgi/pypiserver-wsgi.py
WSGIDaemonProcess pypisrv user=pypisrv group=pypisrv umask=0007 \
processes=1 threads=5 maximum-requests=500 \
display-name=wsgi-pypisrv inactivity-timeout=300
WSGIProcessGroup pypisrv
WSGIPassAuthorization On ## (Optional) Use also apache's authentication.
<Directory /yoursite/wsgi >
Require all granted
</Directort>
or if using older ``Apache < 2.4``, substitute the last part with this::
<Directory /yoursite/wsgi >
Order deny,allow
Allow from all
</Directort>
2. Then create the ``/yoursite/cfg/pypiserver.wsgi`` file and make sure that
the ``user`` and ``group`` of the ``WSGIDaemonProcess`` directive
(``pypisrv:pypisrv`` in the example) have the read permission on it::
import pypiserver
conf = pypiserver.default_config(
root = "/yoursite/packages",
password_file = "/yoursite/htpasswd", )
application = pypiserver.app(**conf)
.. Tip::
If you have installed *pypiserver* in a virtualenv, follow ``mod_wsgi``'s
`instructions <http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html>`_
and prepend the python code above with the following::
import site
site.addsitedir('/yoursite/venv/lib/pythonX.X/site-packages')
.. Note::
For security reasons, notice that the ``Directory`` directive grants access
to a directory holding the *wsgi* start-up script, alone; nothing else.
gunicorn
The following command uses gunicorn to start pypiserver::
gunicorn -w4 'pypiserver:app(root="/home/ralf/packages")'
or when using multiple roots::
gunicorn -w4 'pypiserver:app(root=["/home/ralf/packages", "/home/ralf/experimental"])'
paste/pastedeploy
`paste <http://pythonpaste.org/>`_ allows to run multiple WSGI applications
under different URL paths. Therefore it's possible to serve different set
of packages on different paths.
The following example ``paste.ini`` could be used to serve stable and
unstable packages on different paths::
[composite:main]
use = egg:Paste#urlmap
/unstable/ = unstable
/ = stable
[app:stable]
use = egg:pypiserver#main
root = ~/stable-packages
[app:unstable]
use = egg:pypiserver#main
root = ~/stable-packages
~/unstable-packages
[server:main]
use = egg:gunicorn#main
host = <IP_ADDRESS>
port = 9000
workers = 5
accesslog = -
.. Note::
You need to install some more dependencies for this to work, like::
pip install paste pastedeploy gunicorn pypiserver
The server can then start with::
gunicorn_paster paste.ini
Utilizing the API
-----------------
In order to enable ad-hoc authentication-providers or to use WSGI-servers
not supported by *bottle* out-of-the-box, you needed to launch *pypiserver*
via its API.
- The main entry-point for configuring *pypiserver* is the `pypiserver:app()
<https://github.com/pypiserver/pypiserver/blob/master/pypiserver/__init__.py#L116>`_
function. This function returns the internal WSGI-app that you my then
send to any WSGI-server you like.
- To get all ``pypiserver:app()`` keywords and their explanations, read the
function `pypiserver:default_config()
<https://github.com/pypiserver/pypiserver/blob/master/pypiserver/__init__.py#L35>`_.
- Finally, to fire-up a WSGI-server with the configured app, invoke
the ``bottle:run(app, host, port, server)`` function.
Note that *pypiserver* ships with it's own copy of *bottle*; to use it,
import it like that: ``from pypiserver import bottle``
Using ad-hoc authentication providers
The auther
keyword of pypiserver:app()
function maybe set only using
the API. This can be any callable that returns a boolean when passed
the username and the password for a given request.
For example, to authenticate users based on the /etc/passwd
file under Unix,
you may delegate such decisions to the python-pam
_ library by following
these steps:
-
Ensure
python-pam
module is installed::pip install python-pam
-
Create a python-script along these lines::
$ cat > pypiserver-start.py import pypiserver from pypiserver import bottle import pam pypiserver.app(root='./packages', auther=pam.authenticate) bottle.run(app=app, host='<IP_ADDRESS>', port=80, server='auto')
[Ctrl+ D]
-
Invoke the python-script to start-up pypiserver::
$ python pypiserver-start.py
.. Note::
The python-pam
_ module, requires read access to /etc/shadow
file;
you may add the user under which pypiserver runs into the shadow
group, with a command like this: sudo usermod -a -G shadow pypy-user
.
Sources
To create a copy of the repository, use::
git clone https://github.com/pypiserver/pypiserver.git
cd pypiserver
To receive any later changes, in the above folder use::
git pull
Known Limitations
pypiserver does not implement the full API as seen on PyPI_. It
implements just enough to make easy_install
and pip install
to work.
The following limitations are known:
- Command
pypi -U
that compares uploaded packages with pypi to see if they are outdated, does not respect a http-proxy environment variable (see#19 <https://github.com/pypiserver/pypiserver/issues/19>
_). - It accepts documentation uploads but does not save them to
disk (see
#47 <https://github.com/pypiserver/pypiserver/issues/47>
_ for a discussion) - It does not handle misspelled packages as pypi-repo does,
therefore it is suggested to use it with
--extra-index-url
instead of--index-url
(see#38 <https://github.com/pypiserver/pypiserver/issues/38>
_). - It does not support changing the prefix of the path of the url
(see
#155 <https://github.com/pypiserver/pypiserver/issues/155>
_ for workarounds).
Please use Github's bugtracker <https://github.com/pypiserver/pypiserver/issues>
_
for other bugs you find.
Similar Projects
There are lots of other projects, which allow you to run your own PyPI server. If pypiserver doesn't work for you, the following are among the most popular alternatives:
devpi-server <https://pypi.python.org/pypi/devpi-server>
: a reliable fast pypi.python.org caching server, part of the comprehensivegithub-style pypi index server and packaging meta tool <https://pypi.python.org/pypi/devpi>
. (version: 2.1.4, access date: 8/3/2015)pip2pi <https://github.com/wolever/pip2pi>
_ a simple cmd-line tool that builds a PyPI-compatible local folder from pip requirements (version: 0.6.7, access date: 8/3/2015)flask-pypi-proxy <http://flask-pypi-proxy.readthedocs.org/>
_ A proxy for PyPI that also enables also uploading custom packages.twine
_: A command-line utility for interacting with PyPI or pypiserver.pypi-uploader
_: A command-line utility to upload packages to your pypiserver from pypi without having to store them locally first.Check this SO question:
How to roll my own pypi <http://stackoverflow.com/questions/1235331/how-to-roll-my-own-pypi>
_
Licensing
pypiserver contains a copy of bottle_ which is available under the
MIT license, and the remaining part is distributed under the zlib/libpng license.
See the LICENSE.txt
file.
.. _bottle: http://bottlepy.org .. _PyPI: http://pypi.python.org .. _twine: https://pypi.python.org/pypi/twine .. _pypi-uploader: https://pypi.python.org/pypi/pypi-uploader .. _python-pam: https://pypi.python.org/pypi/python-pam/ .. |travis-status| image:: https://travis-ci.org/pypiserver/pypiserver.svg :alt: Travis build status :scale: 100% :target: https://travis-ci.org/pypiserver/pypiserver
.. |pypi-ver| image:: https://img.shields.io/pypi/v/pypiserver.svg :target: https://pypi.python.org/pypi/pypiserver/ :alt: Latest Version in PyPI
.. |python-ver| image:: https://img.shields.io/pypi/pyversions/pypiserver.svg :target: https://pypi.python.org/pypi/pypiserver/ :alt: Supported Python versions
.. |downloads-count| image:: https://img.shields.io/pypi/dm/pypiserver.svg?period=week :target: https://pypi.python.org/pypi/pypiserver/ :alt: Downloads
.. |proj-license| image:: https://img.shields.io/badge/license-BSD%2Bzlib%2Flibpng-blue.svg :target: https://raw.githubusercontent.com/pypiserver/pypiserver/master/LICENSE.txt :alt: Project License
.. |dependencies| image:: https://img.shields.io/requires/github/pypiserver/pypiserver.svg :target: https://requires.io/github/pypiserver/pypiserver/requirements/ :alt: Dependencies up-to-date?


influenza poultry {border-style avian persons px;} #ffffff;} (HN) infected outbreak exposure influenza-like reported symptoms use confirmed protective samples conjunctivitis potentially px; virus {font-family PPE Table did font-size .–. case-patient convalescent-phase double; human oseltamivir possible questionnaire risk serum tests > (%), Dis Infect Technical analysis associated border-color border-width complete equipment exposed personal potential solid; study {font-style {font-weight Available Avian Control Disease Emerg Influenza bold courier; days dead disease em; infection outbreak, outbreaks pt;} using workers


|
|
|
|
|
|
|
|
|
|
|
|
|
| • |
Measure the channel response to each user.
|
|
|
| • |
Allocate a bandwidth for each based on the
|
|
|
channel path loss.
|
|
|
|
– |
Weak users can only support a small bandwidth
|
|
| • |
Allocate worst path loss users first.
|
|
|
| • |
Allocate them subcarriers with the highest
|
|
|
SNR for that user.
|
|
|
|
– |
Avoids the nulls in the spectrum
|
|
|
| • |
Continue until all users are allocated
|
|


Salvatore Chinchilla I'm an adventurer, forensic scientist, comedian and forklift extraordinaire resumecontact


functions¶
-
stin.functions.
BC_v_G
(α_L, v_L, α_G)¶ The only purpose of this function is to make sure that two-phase flow boundary condition for v_G is consistent with the mathematical model. I.e., by the moment an influx occurs I know liquid phase velocity as a result of the single-phase model solution. Hence, at the boundary of two-phase flow I specify v_L and calculate v_G. Hence, I need a function to find v_G.
-
stin.functions.
cond
(v_G)¶ Verifies that liquid velocity is positive (based on the condition obtained from the sixth equation of the system).
-
stin.functions.
derivative_p
(α_L, α_G, ρ_G, v_L, v_G)¶ Calculates pressure spatial derivative to be pluged into the expression for pressure at the next spatial step (see first equation of the model). It returns the value of pressure spatial derivative at the current time step and, hence, takes as arguments volume fractions, velocities, and gas density at the current spatial step.
-
stin.functions.
derivative_v_G
(v_G, α_G, ρ_G, derivative_p)¶ Calculates gaseous phase spatial velocity derivative at the current spatial step, therefore all the arguments assume their values at the current spatial step. Is used in the third equation of the system.
-
stin.functions.
derivative_v_L
(v_L, α_L, derivative_α_G)¶ Calculates spatial derivative of liquid phase velocity at the current spatial step. Hence, all the arguments it takes assume their values at the current spatial step. It is used in the second version of the sixth equation of the system.
-
stin.functions.
derivative_α_G
(α_G, ρ_G, derivative_p, v_G, derivative_v_G)¶ Calculates spatial derivative of gaseous volume fraction at the current spatial step. Hence, all the arguments it takes assume their values at the current spatial step. It is used in the fourth equation of the system.
- Parameters
- Returns
the return value (gaseous phase velocity). Can assume any value.
- Return type
-
stin.functions.
single_p
(v_L, L, p_0)¶ Calculates pressure at the given point in a single-phase flow. See the second equation of the system.
-
stin.functions.
single_v_L
(v_L0, L)¶ Calculates velocity of a single-phase flow at the given position L along the wellbore. See the first equation of the system.
-
stin.functions.
α_L
(α_G)¶ Calculates liquid phase volume fraction at the next spatial step. Hence, the argument it takes assumes its value at the next spatial step also.
- Parameters
α_G (float) – from 0 to 1.
- Returns
- the return value (liquid phase volume fraction). Can assume
any value in the range 0 to 1.
- Return type
Example
α_L(0.3) = 0.7 - both entities are dimensionless
-
stin.functions.
ρ_G
(p)¶ Calculates gas phase density at the next spatial step based on the pressure value at the next spatial step (see second equation of the model).
- Parameters
p (float) –
- Returns
- the return value (gaseous phase density). Can assume any
positive value.
- Return type
Example
ρ_G(50000000Pa) = 260kg/m^3


---
layout: post
title: Bundler Usage -- Installing Gems
tags:
- bundler
- rails
- ruby
- ruby on rails
status: publish
type: post
published: true
meta:
dsq_thread_id: '257743597'
_edit_last: '1'
_su_rich_snippet_type: none
---
Every time you change your Gemfile then you might adding/removing any dependancies in your application.
Just bundle install
will install gems for you.
The output may look like
$ bundle install Fetching git://github.com/rails/rails.git Fetching source index for http://rubygems.org/ Using rake (0.8.7) Installing abstract (1.0.0) Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.You can specify groups for special environments
$ bundle install --without development test
$ bundle install --without testYou can specify installation directory for your gems. This will install all the gems into tmp/bundle folder
$ bundle install --path tmp/bundleYou can check your applications bundler config.
$ bundle config Settings are listed in order of priority. The top value will be used. disable_shared_gems Set for your local app (/Users/arunagw/foobar/.bundle/config): "1" path Set for your local app (/Users/arunagw/foobar/.bundle/config): "tmp/bundle"For more details about bundler you can checkout http://gembundler.com/ And also http://railscasts.com/episodes/201-bundler


--- title: Sources category: Results order: 400 ---
When people search, we believe they're really looking for answers, as opposed to just links. For many categories of searches (restaurants, game of thrones, code documentation, etc.), there is usually a specialized search engine (e.g. Yelp), content site (e.g. MetroLyrics) or other source (e.g. StackOverflow) that does a better job at actually answering the searches than a general search engine does with just links. Our long-term goal is to get you Instant Answers from these best sources.
To do that, we've developed an open source Instant Answer platform called DuckDuckHack, which allows anyone to propose and develop Instant Answers for DuckDuckGo. On the backend, we have a classification and relevancy engine that selects the best sources for a particular search and displays answers to you in real time, be it for recipes, products, images, and hundreds of other categories.
In fact, DuckDuckGo gets its results from over four hundred sources. These include hundreds of vertical sources delivering niche Instant Answers, DuckDuckBot (our crawler) and crowd-sourced sites (like Wikipedia, stored in our answer indexes). We also of course have more traditional links in the search results, which we also source from a variety of partners, including Oath (formerly Yahoo) and Bing.
We continue to partner with more and more sources to bring you the best Instant Answers from the best sources. Our focus is on synthesizing it all together into a superior search experience.
Partners and Privacy: As per our strict privacy policy, we never share any personal information with any of our partners. The way it works is when we call a partner for information, it is proxied through our servers so it stays completely anonymous. That is, any call to a partner looks to the partner as it is from us and not the user itself, and no user personal information is passed in that process (e.g. their IP address). That way we can build our search result pages using these 100s of partner sources, while still keeping them completely anonymous to you.


{# flatpages/contact_thankyou.html #} {% extends "page_base.html" %} {% block title %}Thank You{% endblock %} {% block page_title %}Thank You{% endblock page_title %} {% block page_subtitle %}
Your message has been sent.